在Silverlight / WP7上使用编码的SOAP服务

时间:2012-02-15 11:56:35

标签: silverlight windows-phone-7 soap

我有一个定义Web服务的.wsdl文件,我想生成一个客户端对象来使用Web服务。在正常的.Net项目中生成这个是没有问题的,但是在定位WP7时会失败(客户端对象生成,但没有它应该拥有的所有方法)。当使用SlSvcUtil.exe直接执行此操作时,我收到错误消息,表明它不支持使用SOAP编码的操作(use ='encoded')。

该服务由第三方运营,我无法更改。

一种解决方案是设置一个中间服务器以转换为我可以阅读的格式,但我想避免这种情况。我还有什么其他选择?是否有任何非MS库可以为我执行此代码生成?如果没有,那么手动解析SOAP会有多大的承诺?

1 个答案:

答案 0 :(得分:2)

我遇到了同样的问题但没有找到解决办法。在定位WP7时,似乎缺乏SOAP服务的使用。 在我的情况下,我最终编写了自己的客户端类来手动解析SOAP。努力保持在限度内,但这取决于服务的复杂性。 有关SOAP协议的更多信息,我可以推荐w3cschools SOAP Tutorial。 在普通.Net项目中生成客户端对象,然后使用fiddler或wireshark调查与SOAP webservice的网络通信也很有帮助。