【问题标题】:How can I consume 2 web services with one class method?如何使用一种类方法使用 2 个 Web 服务?
【发布时间】:2015-07-11 02:38:07
【问题描述】:

我正在创建一个 .Net 应用程序来使用 Soap API。

我从 2 个实例(生产和沙盒)下载了 2 个合作伙伴 wsdl 文件。我认为这两个 API 的唯一区别是它们的端点。

然后我将 Web 引用添加到单个应用程序。当我编写使用 API 的方法时,我不想复制代码来做同样的事情(插入、更新...)。

如何设计我的代码,以便我可以传递一个参数让方法知道它应该与哪个目标实例通信?

谢谢!

【问题讨论】:

  • 如果这些 API 相同(它们只是在不同的环境中),我记得你应该能够只更改代理类上的 URL 端点。只需从某些配置加载您要定位的 URL。另请参阅此答案是否可以帮助您:stackoverflow.com/questions/125399/…

标签: c# .net web-services oop wsdl


【解决方案1】:

如果服务确实相同,只是端点不同,您应该能够使用生成的客户端的 Endpoint 属性来更改端点。

var client = new ServiceReference1.WebService1SoapClient();
client.Endpoint.Address = new System.ServiceModel.EndpointAddress("http://localhost:2850/WebService1.asmx");

【讨论】:

    猜你喜欢
    • 2017-11-04
    • 2023-04-03
    • 1970-01-01
    • 2015-01-08
    • 1970-01-01
    • 2010-10-28
    • 2011-03-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多