错误:无法使用svcutil导入wsdl:port

时间:2010-12-21 21:53:57

标签: .net wcf compiler-errors svcutil.exe

我创建了一个小型WCF服务(托管在IIS中)并使用Chrome来获取它的wsdl,将其放在.wsdf文件中然后想使用svcutil test.wsdl生成客户端代理但是我收到了这个错误:

  

错误:无法导入wsdl:port   详细信息:导入wsdl:port依赖的wsdl:binding时出错   进来。   XPath到wsdl:binding://wsdl:definitionf [@targetNamespace ='http://tempuri.org/'   ] / WSDL:结合[@名称= 'WSHttpBinding_IService1']   XPath到错误源://wsdl:definitions[@targetNamespace='http://tempuri.org/'   ] / WSDL:服务[@名称= '服务1'] / WSDL:端口[@名称= 'WSHttpBinding_IService1']

其他人遇到过这种情况并找到了解决方案吗?

更新:正如约翰·桑德斯所建议的那样,谢谢你,当我直接指出网址时,它会起作用。然而,这是我的小测试案例,看看svcutil可以做什么,因为我预计未来几天从第三方获取wsdl文件并可能遇到同样的问题。由于我采用了最简单的开箱即用生成的.svc,我似乎没有包含块。

1 个答案:

答案 0 :(得分:3)

如果wsdl中有Include块 - 并且它们经常在由WCF生成时执行 - 那么您可能只保存'main'wsdl文件而不是所有引用的文件。

这样做的结果是主文件没有任何意义。正如John Saunders建议的那样,尝试将URL提供给svcutil.exe而不是保存文件。