覆盖WCF WSDL架构中的已定义绑定

时间:2014-02-28 10:28:18

标签: c# web-services wcf soap wsdl

我被赋予了调用外部WCF服务以获取一些数据的任务。到现在为止还挺好。 但是,在服务的WSDL中,有一个绑定地址提供给另一个URL,我相信它是第三方提供商的内部服务器,如果我在我的项目中向服务添加服务引用,所有调用将被定向到WSDL中的URL,即使这是我无法访问的服务器,因此它会引发异常。

这是WSDL中似乎导致问题的部分:

<wsdl:service name="TheService">
<wsdl:port name="BasicHttpBinding_ITheService" binding="tns:BasicHttpBinding_ITheService">
    <soap:address location="https://www.foo.com/theservice.svc/theservice"/>
</wsdl:port>

在上面的示例中,我无法访问“www.foo.com”服务器。有没有办法覆盖这个URL并使用我提供者提供的URL?

1 个答案:

答案 0 :(得分:0)

您需要外部服务吗?如果没有,请将wsdl保存为文件,然后删除该部分。添加新引用但不是将其指向服务端点,而是使用文件引用,如下所示:

文件:/// C:/foo/my.wsdl

我在Apach Axis Web服务中使用过它,它对我有用。祝你好运。