来自第三方供应商的文件上传组件不适用于我的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-Method中收到上传的文件。但是,如果我启动全功能上传组件(来自DevExpress的dxFileUploader),我不会收到该文件。我将调用控制器中的方法,但文件集合为空。为了比较两个上传请求,我为两者创建了Fiddler。请求非常相似。有人知道这两个请求之间有什么问题吗?
答案 0 :(得分:2)
@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"
});
我希望这会有所帮助。