使用HTML5 FormData发送文件时,.Net服务器上的类型

时间:2014-01-30 00:36:21

标签: c# jquery ajax asp.net-mvc

我使用html5 FormData将文件发送到服务器。但是,传入的照片对象始终为空。我可以在网络监视器中看到正在发送的文件。我认为我期望的类型是错误的。目前我有:

[HttpPost]
public JsonResult AssignImages(IEnumerable<HttpPostedFileBase> photos)
{
    return new JsonResult();
}

我也尝试过:

[HttpPost]
public JsonResult AssignImages(IEnumerable<HttpPostedFile> photos)
{
    return new JsonResult();
}

我的JS:

function sendFileToServer(formData, status) {
    var uploadURL = "/Inventory/AssignImages"; //Upload URL
    $.ajax({
        url: uploadURL,
        type: "POST",
        contentType: false,
        processData: false,
        cache: false,
        data: formData,
        success: function (data) {
        }
    });

function handleFileUpload(files){
     var fd = new FormData();
     for (var i = 0; i < files.length; i++) {
                fd.append('File', files[i]);
                sendFileToServer(fd, status);
    }
}

1 个答案:

答案 0 :(得分:1)

您必须从Request.Files集合中获取文件。

请参阅https://stackoverflow.com/a/14674531/120955