как получить несколько файлов на стороне клиента с asp.net 4.0 - PullRequest
0 голосов
/ 09 мая 2019

У меня есть почтовая форма, которая получает несколько полей с несколькими файлами. Как только я получу все поля текста. но не получать файлы, которые загружаются со стороны клиента. здесь я использую плагин для загрузки нескольких файлов jquery. но при отладке я всегда получаю HasFile false из этого элемента управления загрузкой. для более подробной информации я предоставляю этот код:

HTML-разметка:

<tr>
                                            <td style="width: 20%">Attach Files </td>
                                            <td>
                                                <asp:FileUpload ID="file_upload" runat="server" AllowMultiple="true" CssClass="multi" />
                                                <br />
                                                <asp:GridView ID="gv_file_list" runat="server" AutoGenerateColumns="False" DataKeyNames="Id" GridLines="None">
                                                    <Columns>
                                                        <asp:TemplateField>
                                                            <ItemTemplate>
                                                                <asp:Button ID="Button1" runat="server" BackColor="White" BorderColor="White" BorderStyle="None" CommandArgument='<%# Eval("Id") %>' CommandName="DeleteFile" CssClass="theme-font" Font-Underline="True" Text="x" />
                                                            </ItemTemplate>
                                                        </asp:TemplateField>
                                                        <asp:TemplateField>
                                                            <ItemTemplate>
                                                                <asp:Label ID="Label14" runat="server" Text='<%# Bind("File_Title") %>'></asp:Label>
                                                            </ItemTemplate>
                                                        </asp:TemplateField>
                                                    </Columns>
                                                </asp:GridView>
                                                <br />
                                                <asp:Label ID="lblMessage" runat="server" />
                                            </td>
                                        </tr> 

и вот мой код для загрузки загруженных файлов:

bool FileAttached;
        if (file_upload.HasFile) // which always returns false
        {
            FileAttached = true;
        }
        else
        {
            FileAttached = false;
        }
 myEmail.Body = CKEditor1.Text.Trim();
                    myEmail.IsFileAttached = FileAttached;
                    myEmail.SentDateTime = DateTime.Now;
HttpFileCollection fileCollection = Request.Files;
                    double tot_file_size = 0;
                    for (int i = 0; i < fileCollection.Count; i++)
                    {
                        File myFile = new File();
                        HttpPostedFile uploadfile = fileCollection[i];
                        string fileTitle = Path.GetFileName(uploadfile.FileName);
                        string fileName = DateTime.Now.ToString("ddMMyyyy_HHmmss");
                        string fileType = System.IO.Path.GetExtension(fileTitle).ToString().ToLower();
                        myFile.Email_Id = newId;
                        myFile.File_Title = fileTitle;
                        myFile.File_name = fileName;
                        myFile.File_ext = fileType;
                        double file_size = int.Parse(uploadfile.ContentLength.ToString()) / 1024;
                        tot_file_size += file_size;
                        myFile.File_Size = file_size;
                        if (uploadfile.ContentLength > 0)
                        {
                            uploadfile.SaveAs(Server.MapPath("~/EmailFiles/") + fileName + fileType);
                            db.Files.InsertOnSubmit(myFile);
                            db.SubmitChanges();
                            file_names.Add(fileName + fileType);
                        }
                    }

что здесь не так. пожалуйста, помогите мне ..

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...