How to choose multiple files using File Upload Control?
The FileUpload.AllowMultiple
property in .NET 4.5 and higher will allow you the control to select multiple files.
<asp:FileUpload ID="fileImages" AllowMultiple="true" runat="server" />
.NET 4 and below
<asp:FileUpload ID="fileImages" Multiple="Multiple" runat="server" />
On the post-back, you can then:
Dim flImages As HttpFileCollection = Request.Files For Each key As String In flImages.Keys Dim flfile As HttpPostedFile = flImages(key) flfile.SaveAs(yourpath & flfile.FileName) Next
here is the complete example of how you can select and upload multiple files in asp.net using file upload control....
write this code in .aspx file..
<head runat="server"> <title></title></head><body><form id="form1" runat="server" enctype="multipart/form-data"><div> <input type="file" id="myfile" multiple="multiple" name="myfile" runat="server" size="100" /> <br /> <asp:Button ID="Button1" runat="server" Text="Button" OnClick="Button1_Click" /> <br /> <asp:Label ID="Span1" runat="server"></asp:Label></div></form></body></html>
after that write this code in .aspx.cs file..
protected void Button1_Click(object sender,EventArgs e) { string filepath = Server.MapPath("\\Upload"); HttpFileCollection uploadedFiles = Request.Files; Span1.Text = string.Empty; for(int i = 0;i < uploadedFiles.Count;i++) { HttpPostedFile userPostedFile = uploadedFiles[i]; try { if (userPostedFile.ContentLength > 0) { Span1.Text += "<u>File #" + (i + 1) + "</u><br>"; Span1.Text += "File Content Type: " + userPostedFile.ContentType + "<br>"; Span1.Text += "File Size: " + userPostedFile.ContentLength + "kb<br>"; Span1.Text += "File Name: " + userPostedFile.FileName + "<br>"; userPostedFile.SaveAs(filepath + "\\" + Path.GetFileName(userPostedFile.FileName)); Span1.Text += "Location where saved: " + filepath + "\\" + Path.GetFileName(userPostedFile.FileName) + "<p>"; } } catch(Exception Ex) { Span1.Text += "Error: <br>" + Ex.Message; } } } }
and here you go...your multiple file upload control is ready..have a happy day.
aspx code <asp:FileUpload ID="FileUpload1" runat="server" AllowMultiple="true" /> <asp:Button ID="btnUpload" Text="Upload" runat="server" OnClick ="UploadMultipleFiles" accept ="image/gif, image/jpeg" /> <hr /> <asp:Label ID="lblSuccess" runat="server" ForeColor ="Green" /> Code Behind:protected void UploadMultipleFiles(object sender, EventArgs e){ foreach (HttpPostedFile postedFile in FileUpload1.PostedFiles) { string fileName = Path.GetFileName(postedFile.FileName); postedFile.SaveAs(Server.MapPath("~/Uploads/") + fileName); } lblSuccess.Text = string.Format("{0} files have been uploaded successfully.", FileUpload1.PostedFiles.Count);}