ASP.net和HTML文件上传

时间:2016-04-22 20:29:51

标签: javascript c# jquery asp.net xmlhttprequest

问题:我正在使用母版页和包装表单编写的网站上工作。我正在编写的页面需要将文件上传到服务器进行验证。

需要什么:一种不使用表单提交文件的方法,并在WebMethod的服务器上接收该表单。

我尝试了什么:使用XMLHttpRequestFormData发送到WebMethod。创建FormData并附加文件,如下所示:

let dataXML = new FormData();
dataXML.append("xml", $("#fileUpload")[0].files[0]);

像这样发送:

let request = new XMLHttpRequest();
request.onreadystatechange = function () {
    if (request.readyState === 4 && request.status === 200)
        // Do stuff with the request.responseText
};
request.open("POST", PageName + "/" + Route, true);
request.send(dataXML);

这样的webMethod

[WebMethod]
public static string myWebMethod(MultipartFormDataContent Files)
{
    // Do stuff with the file
}

WebMethod根本没有运行。我假设这是WebMethod及其参数的问题。如果我查看Page_Init()(因为它现在正在返回页面html而不是运行我的WebMethod而运行)我可以在HttpContext.Current.Request.Files[0]中看到该文件,但我不知道如何使WebMethod运行。

在有人说之前:是的,我尝试过JQuery AJAX,但它没有什么区别,问题似乎不是客户端(文件是在两种情况下都上传的)。我并不关心JQuery AJAX和XMLHttpRequest。

0 个答案:

没有答案