В вашей форме есть два файла ввода с именами соответственно file
и file1
.Действие вашего контроллера, которое обрабатывает загрузку, имеет только один HttpPostedFileBase
аргумент с именем file
.Таким образом, вы можете добавить второй:
public FileUploadJsonResult Upload(
HttpPostedFileBase file,
HttpPostedFileBase file1
)
{
if (file == null || file1 == null)
{
return new FileUploadJsonResult { Data = new { message = "error" } };
}
if (file.ContentLength > 0)
{
//save file or something
}
if (file1.ContentLength > 0)
{
//save the second file or something
}
return new FileUploadJsonResult { Data = new { message = string.Format("success") } };
}
Или, если вы хотите обрабатывать несколько файлов, вы можете дать им одно и то же имя в вашей форме:
<input type="file" name="files" />
<input type="file" name="files" />
<input type="file" name="files" />
<input type="file" name="files" />
<input type="file" name="files" />
...
, и действие вашего контроллера можетзатем возьмите список файлов:
public FileUploadJsonResult Upload(IEnumerable<HttpPostedFileBase> files)
{
if (files)
{
return new FileUploadJsonResult { Data = new { message = "error" } };
}
foreach (var file in files)
{
if (file.ContentLength > 0)
{
//save file or something
}
}
return new FileUploadJsonResult { Data = new { message = string.Format("success") } };
}
Вы можете оформить следующую запись в блоге о загрузке файлов в ASP.NET MVC.