添加.net Web服务引用

时间:2020-03-06 14:26:48  来源:igfitidea点击:

当我尝试添加Web引用时(取决于我使用的是vs2008 .NET IDE的Express还是Pro版本),我从同一WSDL文件中获得了完全不同的对象。

1)为什么会这样?我希望WSDL在各个平台上都可以发挥相同的作用-显然它们不是!
2)当我选择"添加服务参考"时,如何确定IDE调用的工具/向导。

细节:
VB.NET Express版本正在添加所需和预期的对象。我想使用IDE添加服务(不能与wsdl.exe或者svcutil.exe混为一谈)。

我在Windows Server 2003上使用vs2008 Prov9.0.30729.1. XP上的Express版本9.0.21022.8 RTM。相应的Reference.vb显示相同的标头"此代码由工具生成。运行时版本:2.0.50727.3053" 。

在两个IDE之间,添加服务WSDL的向导UI在外观上是不同的。

Express已严格启用,而Pro已严格禁用。常规的IDE Strict设置似乎对此无能为力。

Java / Eclipse在这些WSDL中没有问题。

解决方案

过去,我曾见过wsdl.exe会产生与VS IDE向导不同的代理类。这可能是解释。

尝试改用svcutil.exe。

很抱歉,Visual Studio生成的代理非常糟糕。

现在,真正的解决方案是编写自己的合同和代理。我知道,这不是个好消息,但是30分钟的打字可能会让我们免受重创。

在idesign.net上查看帮助程序类

当我们添加Web引用时,VS 2005和2008 Pro会生成不同的类,也许这是相似的吗?如果在添加服务引用时单击"高级",则会在表单底部找到"添加Web引用"。