0

我正在尝试打开使用文件控件选择的 csv 文件。

<input type="file" id="fileStoreRoster" style="width:400px;" />

在我的控制器中,我有这个;

public ActionResult Ajax_ImportRoster(string fileName)

我有一些 jQuery 代码应该将文件发布到控制器;

var fileName = $("#fileTimeWindows").val();
$.ajax({
    url: appDomain + '/Maintenance/Ajax_ImportWindows',
    type: "POST",
    data: { fileName: fileName }
});

但是当我打开文件时出现错误

找不到路径的一部分

这仅在我尝试访问用户计算机上的文件时发生在服务器上。

4

2 回答 2

0

文件已上传.. 它不是作为string.. 发送的,而是HttpPostedFile

public ActionResult Ajax_ImportRoster(HttpPostedFileBase fileStoreRoster) {
    // fileStoreRoster.InputStream is a stream to the file
}

另外,请记住您需要multipart/form-data在表单上才能上传文件。

我是否正确理解您的问题?您的个人资料似乎假设您已经知道我刚才所说的内容。

于 2013-06-13T22:41:59.280 回答
0

html 在客户端计算机上呈现,因此引用的文件仅存在于那里。如果您希望使用服务器上的文件,则必须先将其上传(发布)到服务器。

通过向输入字段添加表单来执行此操作,如果您还没有表单,请将该表单提交给一个操作方法,该方法采用System.WebHttpPostedFileBase与输入字段的名称属性相同的参数调用它。该参数将有权访问上传文件的流。

于 2013-06-13T22:43:43.147 回答