Это HTML-форма:
<input id="picture1" name="Input_Pictures" type="file" value="" />
<input id="picture2" name="Input_Pictures" type="file" value="" />
<input id="picture3" name="Input_Pictures" type="file" value="" />
Я тоже пробовал:
<input id="picture1" name="Input_Pictures[]" type="file" value="" />
<input id="picture2" name="Input_Pictures[]" type="file" value="" />
<input id="picture3" name="Input_Pictures[]" type="file" value="" />
а также тоже:
<input id="picture1" name="Input_Pictures[0]" type="file" value="" />
<input id="picture2" name="Input_Pictures[1]" type="file" value="" />
<input id="picture3" name="Input_Pictures[2]" type="file" value="" />
Это мой вид модели:
public class PicturesInputViewModel
{
public IEnumerable<HttpPostedFileBase> Pictures { get; set; }
}
И это действие отправки:
[HttpPost]
public ActionResult Submit(PicturesInputViewModel input)
{
Я могу просмотреть файлы в коллекции Request.Files
, но Pictures
всегда равен нулю.
Как я могу решить эту проблему связывания?
<Ч />
Пока я успешно использую этот код:
var pics = new List<HttpPostedFileBase>();
foreach (string name in Request.Files)
{
var file = Request.Files[name];
if (file.ContentLength > 0)
pics.Add(file);
}
input.Pictures = pics;