如何使用两个多文件上传控制文件在一个按钮点击
本文关键字:文件 一个 控制 按钮 两个 何使用 | 更新日期: 2023-09-27 18:20:32
我在一个页面中使用两个文件上传控件,并将文件保存到提交按钮中。
For Single Uplaod -
<asp:FileUpload ID="FileUpload1" class="form-control" runat="server" />
For Multiple Upload -
<asp:FileUpload ID="FileUpload2" multiple="multiple" class="form-control" runat="server" />
在提交按钮点击我正在使用单一上传的代码是
string filename = Path.GetFileName(FileUploadControl.FileName);
FileUploadControl.SaveAs(Server.MapPath("~/") + filename);
对于多个上传代码是
HttpFileCollection hfc = Request.Files;
savepath = Server.MapPath(filepath);
for (int i = 0; i < hfc.Count; i++)
{
HttpPostedFile hpf = hfc[i];
if (hpf.ContentLength > 0)
{
.....
}}
而CCD_ 1同时占用了CCD_ 2和CCD_。如何选择仅FileUplaod2
的文件。
有人能为这个问题提供解决方案吗。
不要使用Request.Files
。它包含来自FileUpload1
和FileUpload2
的所有文件。请改用FileUpload2.PostedFiles
。
以下是的使用示例
protected void uploadFiles_Click(object sender, EventArgs e)
{
if (FileUpload2.HasFiles)
{
foreach (HttpPostedFile uploadedFile in FileUpload2.PostedFiles)
{
uploadedFile.SaveAs(System.IO.Path.Combine(Server.MapPath("~/MyPath/"),
uploadedFile.FileName));
listofuploadedfiles.Text += String.Format("{0}<br />", uploadedFile.FileName);
}
}
}
您只能在.net 4.5中使用FileUpload2.PostedFiles,而不能在下面使用。另外,您不会在4.5中使用multiple="multiple"。您必须使用AllowMultiple="true"