真的很简单的问题。
我正在向C#中的Web服务发送数据,并将其返回给我。它是SOAP 1.1和/或1.2 Web服务。我不确定如何正确接收这些数据,然后从中获取我需要的信息。
以下是我发送的代码
try
{
_webService.ProcessCard(sVariable1, sVariable2);
}
catch ( Exception d )
{
}
如果我通过浏览器手动使用该服务,这就是我得到的回复
<Response>
<Result>24</Result>
<RespMSG>Invalid</RespMSG>
<ExtData>More Data</ExtData>
</Response>
这是服务定义:
public Response ProcessCard(string sVariable1, string sVariable2 ) {
object[] results = this.Invoke("ProcessCard", new object[] {
sVariable1,
sVariable2});
return ((Response)(results[0]));
}
答案 0 :(得分:0)
“webService.ProcessCard”方法是否返回任何内容?它是返回XML字符串还是结构化数据类型?
请告诉我们ProcessCard
的方法定义,
因此,ProcessCard方法返回类型为Response
的对象 - 所以你只需使用它:
try
{
Response myResponse = _webService.ProcessCard(sVariable1, sVariable2);
// do whatever you like and need to do with myResponse
.......
}
catch ( Exception d )
{
}
一旦你有了“响应”对象 - 你可以随心所欲地做任何事情 - 存储它,在屏幕上显示它,做一些计算......
Web服务(ASP.NET ASMX或WCF)的重点在于你不必与尖括号汤(即大量低级XML内容)相悖,但是你可以专注于您的真实问题,并使用整洁,有用的对象。
很酷,不是吗?
答案 1 :(得分:0)
你应该能够按照
的方式做点什么Response response = _webService.ProcessCard( sVariable1, sVariable2 );
DoSomethingToResult( response.Result );