我正在尝试将一个HTML表单发布到Asp .Net Web服务方法。一切似乎都有效,但Web方法中的请求对象上没有任何表单或文件。任何想法?
Html表格
<form id="formPost" action="service/Post" enctype="multipart/form-data" method="post">
Post File <input id="uploadfile" type=file />
<input type=submit value="Post" />
</form>
网络服务
[WebMethod]
public void Post()
{
// file collection of uploaded files in the http context
HttpFileCollection Files = this.Context.Request.Files;
// always 0 and no form either
if (Files.Count > 0)
{}
}
答案 0 :(得分:2)
您无法使用html表单发布到SOAP Web服务方法。当您提交表单数据时,使用multipart/form-data
编码数据,而Web服务需要SOAP信封和text/xml
内容类型。为了调用Web服务,您需要从WSDL生成代理类,并使用此代理类来调用所需的方法。