asp.net mvc中的多文件上传

set*_*etu 3 c# asp.net-mvc

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

我有一张表格.

<form> 
    <input type="file" name="file1">
    <input type="file" name="files" multiple="true"> 
</form>`
Run Code Online (Sandbox Code Playgroud)

mxm*_*ile 6

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

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

    public IEnumerable<HttpPostedFileBase> files {get;set;}
}
Run Code Online (Sandbox Code Playgroud)

然后在你的行动中:

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

    foreach(var file in form.files)
    {
        if(file != null)
        {
            //handle file
        }
    }
    ...
}
Run Code Online (Sandbox Code Playgroud)