我正在为WCF服务使用外部WSDL文件。
<wsdl:service n<wsdl:service name="CommonService">
<wsdl:port name="BasicHttpBinding_ICommonService" binding="tns:BasicHttpBinding_ICommonService">
<soap:address location="http://localhost:1371/CommonService.wsdl"/>
</wsdl:port>
</wsdl:service>
当我向此服务添加服务引用时,我在客户端收到错误,因为方法不允许。
但是当我从WSDL文件中删除上面的代码并用它替换它时,它工作正常。有什么问题。任何人都可以确定这背后的共鸣。
<wsdl:service name="CommonService">
<wsdl:port name="BasicHttpBinding_ICommonService" binding="tns:BasicHttpBinding_ICommonService">
<soap:address location="http://localhost:1371/Service.svc"/>
</wsdl:port>
</wsdl:service>
答案 0 :(得分:3)
我认为您不会在IIS中公开.wsdl扩展名的处理程序。或者您没有办法映射该扩展。通常,WCF服务中的wsdl位于.svc?wsdl
。
很抱歉,如果我说的是明显的,但原因似乎是改变了这个位置:
http://localhost:1371/CommonService.wsdl
对此:
http://localhost:1371/Service.svc