だから私はAsp.NETMVCでUploadifive1.0を実装しようとしています。デバッガーモードを使用すると、アップロードアクションがコントローラーに正常に渡され、サーバー変数も渡されることがわかります。ただし、HttpPostedFileBase変数fileDataは常にnullです。私はグーグルでどこを見ても答えを見つけることができませんでした。変数はfileDataと呼ばれる必要があることがわかりました。しかし、それは役に立ちません。
ビューの一部は次のとおりです。
<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);
}
ポインタやヘルプをいただければ幸いです。私は失われたと感じます。