Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何使用一个类方法使用两个web服务?_C#_.net_Web Services_Oop_Wsdl - Fatal编程技术网

C# 如何使用一个类方法使用两个web服务?

C# 如何使用一个类方法使用两个web服务?,c#,.net,web-services,oop,wsdl,C#,.net,Web Services,Oop,Wsdl,我正在创建一个.Net应用程序来使用Soap API 我从2个实例(生产和沙盒)下载了2个合作伙伴wsdl文件。我认为这两个API的唯一区别在于它们的端点 然后,我将web引用添加到单个应用程序中。当我编写使用API的方法时,我不想复制代码来做同样的事情(插入、更新…) 我如何设计我的代码,以便我可以传递一个参数,让方法知道它应该与哪个目标实例通信 谢谢大家! 如果服务确实相同,而只是端点不同,那么您应该能够使用生成的客户端的端点属性来更改端点 var client = new ServiceR

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

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

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

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


谢谢大家!

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

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

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

var client = new ServiceReference1.WebService1SoapClient();
client.Endpoint.Address = new System.ServiceModel.EndpointAddress("http://localhost:2850/WebService1.asmx");
如果这些API与我记忆中的相同(它们只是在不同的环境中),那么您应该能够更改代理类上的URL端点。只需从一些配置中加载您要定位的URL。还要看看这个答案是否能帮助您:如果这些API与我记忆中的相同(它们只是在不同的环境中),那么您应该能够更改代理类上的URL端点。只需从一些配置中加载您要定位的URL。另请参见此答案是否有助于您: