文件上传到 ASP。 NET MVC 6 不工作

Posted

技术标签:

【中文标题】文件上传到 ASP。 NET MVC 6 不工作【英文标题】:File upload to ASP. NET MVC 6 not working 【发布时间】:2016-07-25 16:05:07 【问题描述】:

来自第 3 方供应商的文件上传组件不适用于我的 MVC 6 项目。因此,我用标准的 asp.net 组件构建了一个非常简单的上传机制:

<form method="post" asp-action="Index2" asp-controller="Data" enctype="multipart/form-data">
    <input type="file" name="files" multiple />
    <input type="submit" value="Upload" />
</form>

此上传工作正常。我在控制器的 POST 方法中收到上传的文件。但是,如果我启动全功能上传组件(来自 DevExpress 的 dxFileUploader),我不会收到该文件。我在控制器中的方法将被调用,但文件集合为空。为了比较两个上传请求,我为两者创建了一个Fiddler。请求非常相似。有人知道这两个请求之间有什么问题的区别吗?

【问题讨论】:

能否请您提供如何绑定dxFileUploader的代码以及您在服务器上有哪些代码来处理文件上传?我试图下载你的文件,但它返回了一些奇怪的东西。 【参考方案1】:

@Marco,我知道这是旧的,但是,请确保您的控制器中的绑定是正确的,这意味着您的操作的参数与组件的名称匹配。我正在使用 dxFileUploader(16.1 版)执行以下操作:

public async Task<IActionResult> UploadProducts([FromForm]IFormFileCollection files)...

我认为以下内容:

$("#file-uploader").dxFileUploader(
        selectButtonText: "Select Product File",
        labelText: "",
        accept: "text/csv",
        uploadMode: "useForm",
        name: "files"
    );

我希望这会有所帮助。

【讨论】:

以上是关于文件上传到 ASP。 NET MVC 6 不工作的主要内容,如果未能解决你的问题,请参考以下文章

Asp.net MVC:上传多个图像文件?

增删查改实现多文件上传, 采用ASP.NET MVC 5 and EF 6

ASP.NET MVC 获取带有用户 ID 的文件上传名称并应用于单独的字段

asp.net mvc 文件跨域上传,接收返回结果

如果asp.net mvc3中的大小超过4mb,则无法上传文件[重复]

ASP.Net MVC 5 图像上传到文件夹