Я провел тестирование для загрузки фотографии в MVC (фото отправляется как параметр в контроллер AJAX CALL) с использованием формы, и теперь необходимо сделать то же самое но изменение:Форма enctype = "multipart/form-data" NOT WORKING
Первоисточник, который работает в:
<form action="/Home/Upload" method="post" enctype="multipart/form-data">
<label for="photo">Photo:</label>
<input type="file" name="photo" id="photo" />
<input id="uploadbtn" type="submit" value="Upload" />
</form>
и действия кода от контроллера:
[HttpPost]
public ActionResult Upload(HttpPostedFileBase photo)
{
// Verify that the user selected a file
if (photo != null && photo.ContentLength > 0)
{
// extract only the fielname
var fileName = Path.GetFileName(photo.FileName);
// store the file inside ~/App_Data/uploads folder
var path = Path.Combine(Server.MapPath("~/C:/poze"), fileName);
photo.SaveAs(path);
}
return Json(new { Success = true });
}
Это работает, но в данном случае не работает:
@using (Html.BeginForm(null, null, FormMethod.Post, new { enctype = "multipart/form-data" }))
{
<div class="control-group">
<label class="control-label" for="photo">Photo:</label>
<div class="controls">
<input type="file" name="photo" id="photo" />
</div>
</div>
}
и Действие код:
public ActionResult EditModule(INT ID, string Description, HttpPostedFileBase photo)
{
if (photo != null && photo.ContentLength > 0)
{
// extract only the fielname
var fileName = Name + ".png";
// store the file inside ~/App_Data/uploads folder
var path = Path.Combine(Server.MapPath("~/Content/Module Previews"), fileName);
photo.SaveAs(path);
}
else
{
Status += "Error image";
Success = false;
}
}
Когда я отладки EditModule значение для фото является NULL. Я уверен, что нет никаких проблем с javascript и ajax-вызовом.
Какой 'javascript и ajax call'? – Zabavsky