проблема асинхронной загрузки файла с помощью Ajax.BeginForm()
Всем Привет,
Я пытаюсь загрузить файл с помощью Ajax.BeginForm (), но это не работает.
Мой Взгляд Содержит:
@using (Ajax.BeginForm("UploadFile", null, new AjaxOptions { HttpMethod="POST", UpdateTargetId = "result" }, new { enctype = "multipart/form-data" })) { <label id="lblUploadNewFile" for="fileUploadControl">Upload New File</label> <input type="file" name="fileToUpload" id="fileUploadControl"/> <input id="btnFileUpload" type="submit" value="Upload" /> <span id="result" /> }
и соответствующий контроллер есть:
[HttpPost] public string UploadFile(FormCollection formData) { HttpPostedFileBase file=null; try { file = Request.Files[0]; } catch { } if ( file!=null && file.ContentLength > 0) { file.SaveAs(string.Concat(AppDomain.CurrentDomain.BaseDirectory, Path.GetFileName(file.FileName))); return "Successfully Uploaded"; } else { return "Upload Failed, please try again."; } }
теперь проблема в том, что он загружает файл, но не делает асинхронный, когда я удаляю его "jquery.unobtrusive-ajax.js- ...Он делает полный обратный отсчет. Когда я добавляю "jquery.unobtrusive-ajax.js"это, на мой взгляд, делает асинхронно, но не отправляет файл загрузки в виде данных. Ни один файл не отправляется на сервер в Запрос.Файлы[].
Кто-нибудь, пожалуйста, помогите.
Заранее большое спасибо!
-Солнечный.