Я пытаюсь добавить изображение с использованием формы ajax MVC 4, но всегда возвращает значение null. Я добавил свою модель, контроллер и представление.MVC 4 Ошибка загрузки изображения ajax
Мой Посмотреть
@using (Ajax.BeginForm("Create", "Images", new AjaxOptions { HttpMethod = "Post", OnSuccess = "OnSuccess", OnFailure = "OnFailure", UpdateTargetId = "messageDiv" }, new { enctype = "multipart/form-data" }))
{
@Html.AntiForgeryToken()
@Html.ValidationSummary(true)
<div class="editor-field">
@Html.LabelFor(model => model.Image.Description, new { @class = "control-label" })
<div class="controls">
@Html.TextBoxFor(model => model.Image.Description)
</div>
@Html.TextBoxFor(model => model.FileImage, new { type = "file" })
@Html.ValidationMessageFor(model => model.FileImage)
</div>...
}
My Model
public class ImageViewModel
{
public IList<Image> Images { get; set; }
public Image Image { get; set; }
public HttpPostedFileBase FileImage { get; set; }
}
Мой контроллер
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Create(ImageViewModel model, HttpPostedFileBase FileImage)
{
if (ModelState.IsValid)
{
var x = FileImage.FileName;
var imageUrl = Path.GetFileName(model.FileImage.FileName);
...
}
}
В этом примере я не удалось получить имя_файла. он всегда возвращает значение null. Не могли бы вы помочь мне решить эту проблему. Я буду очень счастлив.
Вы не можете загружать файлы с помощью Ajax.BeginForm. См. Http://stackoverflow.com/questions/8499748/mvc3-file-upload-using-ajax-form-request-files-empty – Dave
Большое вам спасибо. – koirene