Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/77.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery AJAX文件上载-HttpPostedFileBase参数始终为空MVC 4_Jquery_Ajax_Asp.net Mvc 4_File Upload_Asp.net Ajax - Fatal编程技术网

Jquery AJAX文件上载-HttpPostedFileBase参数始终为空MVC 4

Jquery AJAX文件上载-HttpPostedFileBase参数始终为空MVC 4,jquery,ajax,asp.net-mvc-4,file-upload,asp.net-ajax,Jquery,Ajax,Asp.net Mvc 4,File Upload,Asp.net Ajax,我试图通过AJAX请求向控制器操作发送CSV文件,但是,HttpPostedFileBase参数始终为空。因此,我无法访问我试图发送的文件的内容。请有人告诉我解决这个问题的错误在哪里 这是我的控制器: [HttpPost] public ActionResult ImportCSV(HttpPostedFileBase file) { var files = Request.Files.Count; // This returns 1. However, 'file' parameter

我试图通过AJAX请求向控制器操作发送CSV文件,但是,
HttpPostedFileBase
参数始终为空。因此,我无法访问我试图发送的文件的内容。请有人告诉我解决这个问题的错误在哪里

这是我的控制器:

[HttpPost]
public ActionResult ImportCSV(HttpPostedFileBase file)
{
    var files = Request.Files.Count; // This returns 1. However, 'file' parameter is null

    // Process the CSV file here...

    return View();
}
这是我的HTML:

<table class="fieldset">
    <tr>
        <td>Select File:</td>
        <td>
            <!--FILE TEXTFIELD-->
            <input type="file" id="file" name="file" class="hide file-upload" />

            <!--OVERLAY-->
            <div id="filename" class="file-textbox"></div>

            <!--ELIPSES-->
            <button id="filestyle" class="elipses button green-button">...</button>
        </td>
        <td>
            <!--UPLOAD-->
            <button type="button" id="btnUpload" class="button green-button upload">Upload</button>
            <div class="loading"></div>
        </td>
    </tr>
</table>

您可以直接读取
Request.Files

 var file = Request.Files[0];
或:

其中“file”是输入元素名


您可能还想阅读

请问您使用的浏览器是什么?它使用Request.Files[0]工作。但这仍然不能解决为什么参数为空的问题。谢谢你的临时修复!另外,我已经尝试了所有的浏览器。
 var file = Request.Files[0];
var file = Request.Files["file"];