获取返回值
问题描述:
是否有可能得到ASMX Web服务的返回值,我有这样的代码:获取返回值
[WebMethod(CacheDuration = 0)]
public System.Xml.XmlDocument Load_DOK(System.Xml.XmlDocument XmlDoc)
{
}
输入的参数为XML文档,并返回消息必须是一个格式化SOAP消息,就像这样:
soapEnvelop.LoadXml(@"<soap:Envelope xmlns:soap=""http://schemas.xmlsoap.org/soap/envelope/"" xmlns:xsi=""http://www.w3.org/2001/XMLSchema"" xmlns:xsd=""http://www.w3.org/2001/XMLSchema""><soap:Body><Response_status>0</Response_status><Description>SUCCESS</Description></soap:Body></soap:Envelope>");
return soapEnvelop;
这是参数传递到Web服务调用:
System.Xml.XmlDocument ReceivingXmlDoc = new System.Xml.XmlDocument();
TestService.TestService ws_dok = new TEST.TestService.TestService();
ws_dok.Load_DOK(SendingXmlDoc);
那么是否有可能提取该回报?
谢谢!
答
这应该是像这样简单:
XmlDocument receivingXmlDoc = ws_dok.Load_DOK(sendingXmlDoc);
答
是这样,因为你已经声明webmethod Load_DOK to return as XmlDocument
XmlDocument doc= ws_dok.Load_DOK(SendingXmlDoc);
我得到了一个错误:错误无法隐式转换类型“系统.Xml.XmlNode'改为'System.Xml.XmlDocument'。存在明确的转换(您是否缺少演员?) – CrBruno 2012-07-23 10:37:21
请让我看看引发此错误的代码以及Load_DOK的完整代码 – HatSoft 2012-07-23 11:02:35