Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/334.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 为什么上载多个文件时HttpPostedFileBase列表为空?_Javascript_C#_Asp.net Mvc - Fatal编程技术网

Javascript 为什么上载多个文件时HttpPostedFileBase列表为空?

Javascript 为什么上载多个文件时HttpPostedFileBase列表为空?,javascript,c#,asp.net-mvc,Javascript,C#,Asp.net Mvc,在客户端,我有以下代码: <form action="@Url.Action("UploadStatistics")" method="POST" enctype="multipart/form-data"> <h4>Upload Statistics Excel file(s)</h4> <p> <input type="file" name="file" id="file" multiple/> </p> &l

在客户端,我有以下代码:

<form action="@Url.Action("UploadStatistics")" method="POST" enctype="multipart/form-data">
<h4>Upload Statistics Excel file(s)</h4>
<p>
    <input type="file" name="file" id="file" multiple/>
</p>

<input type="submit" onclick="ClearDirtyFlag();" />

上载统计数据Excel文件

因此,用户可以选择多个文件进行上传

在服务器端,我有以下代码:

public ViewResult UploadStatistics(List<HttpPostedFileBase> files)
{
    //the issue is that the files parameter comes null...
}
public view结果上传统计信息(列表文件)
{
//问题是files参数为空。。。
}
注意:如果我不希望出现HttpPostedFileBase对象的列表(但只需要一个HttpPostedFileBase参数),那么代码工作正常

谁能告诉我这里有什么问题吗

致意。

您的输入有
name=“file”
,但POST方法中的参数名为
files
——它们不匹配。将输入更改为

<input type="file" name="files" id="file" multiple/>
这使您能够应用验证属性并获得客户端和服务器端验证,从而获得额外的好处。您的输入具有
name=“file”
,但POST方法中的参数名为
files
——它们不匹配。将输入更改为

<input type="file" name="files" id="file" multiple/>

这使您能够应用验证属性并获得客户端和服务器端验证的附加好处

name=“file”
与您的参数名称(复数)不匹配。将其更改为
name=“files”
(或将参数更改为
List file
)@StephenMuecke谢谢,它工作得很好。如果您愿意,请将此作为答案写下来,这样我就可以接受它,也许它会帮助其他人。
name=“file”
与您的参数名称(复数)不匹配。将其更改为
name=“files”
(或将参数更改为
List file
)@StephenMuecke谢谢,它工作得很好。如果你愿意,请写下这个作为答案,这样我可以接受它,也许它会帮助别人。
@Html.TextBoxFor(m => m.Files, new { type = "file" })