Я пытаюсь загрузить файл с ASP.NET MVC.
Следующий код прекрасно работает:
// Read in the image data.
byte[] binaryData = null;
HttpPostedFileBase uploadedFile = Request.Files["ImageFileName"];
if (uploadedFile != null &&
uploadedFile.ContentLength > 0)
{
binaryData = new byte[uploadedFile.ContentLength];
uploadedFile.InputStream.Read(binaryData,
0,
uploadedFile.ContentLength);
}
Но я пытаюсь использовать новую FileCollectionModelBinder
, найденную в сборке futures .
Я нашел эти два сообщения в блоге здесь и здесь , объясняющих, что делать. Я следую этим инструкциям, но мне не повезло -> объект file
всегда null
.
Вот мой метод.
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult Create([Bind(Include = "Subject, Content")]
Post post,
HttpPostedFileBase file)
{
UpdateModel(post);
...
}
Обратите внимание, как я пытаюсь загрузить файл и загрузить некоторую информацию о сообщении в объект Post.
Кто-нибудь может сделать какие-либо предложения?
Для справки, я подключил ModelBinder в моем global.asax.cs. Я также удостоверился, что форма - сообщение с добавленным enctype: -
<form method="post" enctype="multipart/form-data" action="/post/create">