所以我試圖用Asp.NET MVC實現Uploadifive 1.0。使用調試器模式,我知道上傳操作已成功傳遞給控制器,同時也傳遞了服務器變量。但是,HttpPostedFileBase變量fileData始終爲空。我在谷歌無處不在,找不到答案。我發現變量必須被稱爲fileData。這雖然沒有幫助。使用Asp.Net MVC獲取Null值爲HttpPostedFileBase使用最新的Uploadifive
這裏的視圖的一部分:
<form action="<%: Url.Action("SaveFiles", "File") %>" enctype="multipart/form-data">
<input type="file" name="file_upload" id="file_upload" />
</form>
<script type="text/javascript">
(function ($) {
$(document).ready(function() {
$('#file_upload').uploadifive({
'method': 'post',
'uploadScript': 'SaveFiles',
'formData': {'path' : 'documents'}
});
});
})(jQuery);
</script>
這裏的控制器動作:
[HttpPost]
public ActionResult SaveFiles(HttpPostedFileBase fileData)
{
string uploadFolder = Request.ServerVariables.Get("HTTP_X_PATH");
if(string.IsNullOrWhiteSpace(uploadFolder))
return Json(JsonMessageManager.GetFailureMessage("No upload folder was selected"));
if (fileData != null && fileData.ContentLength > 0)
{
var fileName = Path.GetFileName(fileData.FileName);
var path = Path.Combine(Server.MapPath("~/Content/" + uploadFolder), fileName);
fileData.SaveAs(path);
return Json(true);
}
return Json(false);
}
任何指針或幫助將不勝感激。我感到失落。
感謝您對我的帖子的回覆。我已經注意到uploadifive已經更新了,但它變成了uploadifive並不是我網站的最佳解決方案,所以我下載了plupload,因爲它提供了完整的瀏覽器支持,不僅僅是FF和Chrome。 – Sebbo
我有同樣的問題。早些時候我使用1.0.2版本,並將其更新到1.2.2。現在問題解決了。謝謝tkha007 – cp100