WCF向后兼容性问题
时间:2020-03-05 18:39:19 来源:igfitidea点击:
我有一个WCF服务,必须从.net 2.0项目中引用。
我尝试使用"添加网络引用"方法来引用它,但是它弄乱了参数。
例如,我在服务中有一个方法希望传递一个char [],但是当我添加Web引用时,该方法期望一个int []。
因此,然后我尝试设置svcutil,并且工作正常。
我只能通过向.net 2.0项目添加一堆.net 3.0引用来编译服务类。这与建筑师的关系不佳,所以我必须做到这一点(也许也是最好的)。
所以我想知道是否有人对我如何设置.net 2.0项目以引用WCF服务有任何指示或者资源。
解决方案
回答
我们需要编辑WSDL的那些实例之一。首先是一个有用的工具
http://codeplex.com/storm
回答
感谢资源。它当然可以帮助我测试Web服务,但是在.net 2.0应用程序中使用WCF服务并没有多大帮助。
我最终最终要做的是回到架构师,并解释说,我需要参考的3.0 dll已重新编译以在2.0 CLR上运行。我们不一定喜欢该解决方案,但由于似乎没有太多可行的选择,我们现在将继续使用它
回答
我们使用的是什么绑定?我认为,如果坚持basicHttp绑定,我们应该能够使用.net 2项目中的"添加Web参考"方法生成代理?
也许如果我们发布合同/接口定义可能会有所帮助?
干杯
理查德
回答
我正在使用basicHttp绑定,但是问题实际上出在XMLSerializer上。除了基本值类型以外,它无法正确识别WCF生成的wsdl(即使使用basicHttp绑定)。
我们通过添加对3.0 dll的引用并使用datacontract序列化程序来解决此问题。