【问题标题】:Dynamic web service proxy in .NET?.NET 中的动态 Web 服务代理?
【发布时间】:2011-11-05 13:01:47
【问题描述】:

我需要实现一个系统,该系统能够有条件地在使用相同 WSDL 部署的不同不同应用程序上使用 Web 服务。

例如,如果系统 B、C、D 和 E 托管 Web 服务 WS1、WS2、WS3 和 WS4,它们都基于相同的 WSDL,从而公开相同的 Web 方法,那么我的系统 A 将需要使用其中一个4 个基于从下游组件(例如,数据库)检索的条件的 Web 服务。系统 B、C、D 和 E 可以用任何技术(Java、.NET 等)实现,但我的系统 A 是基于 .NET。

因此,我的系统 A 上基于此 WSDL 的代理类需要动态更改 Web 服务代理中的 URI。那么如何在使用所需的 Web 服务之前动态更改端点?

【问题讨论】:

    标签: .net wcf web-services


    【解决方案1】:

    “添加服务引用”或 svcutil.exe 生成的代理类有几个接受远程地址的构造函数。使用其中之一。见WCF Client Overview

    例如:

    EndpointAddress addr = new EndpointAddress(uri);
    var client = new MyServiceClient(bindingConfigurationName, addr);
    

    【讨论】:

      【解决方案2】:

      你的意思是这样改网址吗?

      net.webservicex.www.LondonGoldAndSilverFix Proxy = new net.webservicex.www.LondonGoldAndSilverFix();
      
      Proxy.Url = "http://www.webservicex.net/LondonGoldFix.asmx";
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-09-18
        • 2013-08-23
        • 2010-11-18
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多