0

我正在为 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>
4

1 回答 1

3

我认为这是您没有在 IIS 中公开 .wsdl 扩展名的处理程序的事实。或者你没有办法映射那个扩展。通常,WCF 服务中的 wsdl 位于.svc?wsdl.

对不起,如果我说的很明显,但原因似乎是从这里改变位置:

http://localhost:1371/CommonService.wsdl

对此:

http://localhost:1371/Service.svc

于 2012-07-13T09:44:20.273 回答