Ваши действия должны нравится:
[HttpPost]
public ActionResult Upload(HttpPostedFileBase file) {
if (file.ContentLength > 0) {
var fileName = Path.GetFileName(file.FileName);
var path = Path.Combine(Server.MapPath("~/App_Data/uploads"), fileName);
file.SaveAs(path);
}
return RedirectToAction("Index");
}
Взято из: http://haacked.com/archive/2010/07/16/uploading-files-with-aspnetmvc.aspx/
Затем с помощью JQuery диалоговое окно для загрузки файла:
$dialog.dialog("option", "buttons", {
"Save": function() {
var dlg = $(this);
var formData = new FormData($("#" + formName)[0]);
$.ajax({
url: /Controller/upload,
type: 'POST',
data: formData,
processData: false,
contentType: false,
success: function (response, textStatus, xhr) {
...
}
},
error: function (xhr, status, error) {
....
}
});
},
"Cancel": function() {
$(this).dialog("close");
$(this).empty();
}
});
проверки этот блог: https: // см./Это объясняет это красиво. – Zippy
Yuu не дал достаточно подробностей о том, что вы делаете, но [этот ответ] (http://stackoverflow.com/questions/29293637/how-to-append-whole-set-of-model-to-formdata-and- get-it-in-mvc/29293681 # 29293681) может помочь –
возможный дубликат [Как я могу загружать файлы асинхронно?] (http://stackoverflow.com/questions/166221/how-can-i-upload-files- асинхронно) –