Asp.net mvc 4 mvc4html.BeginForm()不';不要上传多个文件
我试图在MVC4中从一个表单上传两个图像。我看到了这一点,它可以像Haaked那样正常工作,但是当我尝试使用(Html.BeginForm())来做同样的事情时,它不起作用 我有控制器提供的操作方法,适用于两种情况:Asp.net mvc 4 mvc4html.BeginForm()不';不要上传多个文件,asp.net-mvc-4,Asp.net Mvc 4,我试图在MVC4中从一个表单上传两个图像。我看到了这一点,它可以像Haaked那样正常工作,但是当我尝试使用(Html.BeginForm())来做同样的事情时,它不起作用 我有控制器提供的操作方法,适用于两种情况: [HttpPost] public ActionResult Photo(IEnumerable<HttpPostedFileBase> files) { foreach (var file in files) {
[HttpPost]
public ActionResult Photo(IEnumerable<HttpPostedFileBase> files)
{
foreach (var file in files)
{
if (file != null && file.ContentLength > 0)
{
var fileName = Path.GetFileName(file.FileName);
var path = Path.Combine(Server.MapPath("~/Content/Photos/"), fileName);
file.SaveAs(path);
}
}
return RedirectToAction("Photo");
}
[HttpPost]
公共行动结果照片(IEnumerable文件)
{
foreach(文件中的var文件)
{
如果(file!=null&&file.ContentLength>0)
{
var fileName=Path.GetFileName(file.fileName);
var path=path.Combine(Server.MapPath(“~/Content/Photos/”),文件名);
file.SaveAs(路径);
}
}
返回操作(“照片”);
}
问题来自于观点。以下是来自Haaked网站的代码,用于查看,可以使用:
<form action="" method="post" enctype="multipart/form-data">
<label for="file1">Filename:</label>
<input type="file" name="files" id="file1" />
<label for="file2">Filename:</label>
<input type="file" name="files" id="file2" />
<input type="submit" />
</form>
文件名:
文件名:
这是我没有的代码
@using (Html.BeginForm())
{
<label for="file1">Filename:</label>
<input type="file" name="files" id="file1" />
<label for="file2">Filename:</label>
<input type="file" name="files" id="file2" />
<input type="submit" />
}
@使用(Html.BeginForm())
{
文件名:
文件名:
}
我做错了什么?您需要在Html.BeginForm的方法重载中指定文件上载的enctype
@using (Html.BeginForm("YourAction", "YourController", FormMethod.Post,
new { enctype = "multipart/form-data" }))
{
<label for="file1">Filename:</label>
<input type="file" name="files" id="file1" />
<label for="file2">Filename:</label>
<input type="file" name="files" id="file2" />
<input type="submit" />
}
@使用(Html.BeginForm(“YourAction”、“YourController”、FormMethod.Post、,
新的{enctype=“multipart/form data”})
{
文件名:
文件名:
}