c# - 为什么 fileupload 控件不上传其中包含相同数据的多个文件?

标签 c# asp.net c#-4.0 file-upload .net-4.0

我在 ASP.NET 中使用 FileUpload 控件并使用它上传多个文件,但问题是它会上传多个内容相同的文件,即如果我上传 4 张图片 image1.png, image2.png, image3.jpg, image4.gif 那么它在每张图片中包含相同的图片/数据.为什么?

.aspx代码:

<asp:FileUpload ID="FileUploadMaps" AllowMultiple="true" runat="server" />
<asp:HiddenField ID="hdnFieldMapPath" runat="server" />

.cs代码:

if (FileUploadMaps.HasFiles)
{
    foreach (HttpPostedFile uploadedfile in FileUploadMaps.PostedFiles) 
    {
        string fileName = Path.GetFileName(uploadedfile.FileName);
        FileUploadMaps.SaveAs(Server.MapPath("~/SiteImages/") + fileName);

        mngUploadedMaterialMaps.InsertUploadedMaterialMaps(fileName, "", PropertyDetailsID);
    }
}

最佳答案

如果您对多个文件使用 FileUpload,则应使用 HttpPostedFile.SaveAs方法,而不是控制端方法,像这样:

if (FileUploadMaps.HasFiles)
{
    foreach (HttpPostedFile uploadedfile in FileUploadMaps.PostedFiles) 
    {
        var fileName = Path.GetFileName(uploadedfile.FileName);
        uploadedfile.SaveAs(Server.MapPath("~/SiteImages/") + fileName);
        mngUploadedMaterialMaps.InsertUploadedMaterialMaps(fileName, "", PropertyDetailsID);
    }
}

关于c# - 为什么 fileupload 控件不上传其中包含相同数据的多个文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35437931/

相关文章:

c# - 如何从 C# 中的特定光标点开始读取文件?

c# - 在 asp.net webform 中要求身份验证的最快方法?

c# - 使用 C#.net 从 Sharepoint Online 下载文件?

c# - 如何增加ToolTip显示时间?

Asp.Net 4.0 在 SqlServer 中存储 session

c# - 如何将击键发送到应用程序 UI 自动化 -C#

c#-4.0 - 如何在 C# 中捕获未处理的异常?

c# - 2018 年如何保护我的 .NET Core 2.1 代码免遭逆向工程

c# - 查询执行速度非常慢,有什么办法可以进一步改进吗?

c# - XML 解析器,多根