asp.net mvc中的多文件上传

我需要从同一个表单中获取单个文件上传器和多个文件上传器的文件。 并且还需要知道这些文件来自哪个输入字段。 从Request.Files我可以获取所有文件,但无法知道这些文件来自哪个字段。

我有一张表格。

`

直接使用模型而不是Request.Files 。 根据您的观点,您可以执行以下操作:

 public class UploadForm { public HttpPostedFileBase file1 {get;set;} public IEnumerable files {get;set;} } 

然后在你的行动中:

 public ActionResult Uploade(UploadForm form) { if(form.file1 != null) { //handle file } foreach(var file in form.files) { if(file != null) { //handle file } } ... } 

如果这两个上传控件具有不同的名称属性,则可以让模型绑定器完成工作。 您只需将控制器操作中的参数命名为与上载控件的名称相同。

 public ActionResult Upload(HttpPostedFileBase file1, IEnumerable files) { ... }