2011-03-11 30 views
0

我有两个服务,如'http://192.168.1.4/zfsapi/api.php?wsdl'和'http://192.168.1.5/zfsapi /api.php?wsdl'具有相同的功能,但托管在不同的服务器在C#客户端我创建了'http://192.168.1.4/zfsapi/api.php?wsdl'这个服务的代理。我想根据服务的不同serverIP地址在运行时更改此服务的地址。运行时间(Programaticaly变化)从客户端服务的地址

任何人都可以帮助我吗?

+0

你想做的我没有通过...请澄清更多的细节.. –

+0

我想要从服务端客户端的变化endpont地址取决于不同的服务器。 – viky

+0

该服务托管在具有相同功能的不同服务器上,我们仅在客户端引用一个服务参考 – viky

回答

1

您可以创建通过指定绑定和端点地址的客户端代理类:

// or instantiate whatever other binding you're using  
BasicHttpBinding binding = new BasicHttpBinding(SecurityMode.None); 

// define the endpoint address 
EndpointAddress epa = new EndpointAddress("http://192.168.1.5/zfsapi/api.php"); 

// create your WCF client-side proxy based on those settings 
YourServiceClient client = new YourServiceClient(binding, epa); 

一旦客户端创建,你不能改变它的端点地址 - 如果你需要使用一个新的地址,您需要实例化客户端代理类的新实例。

+0

但是,如果YourServiceClient没有这两个参数的构造函数呢? –

相关问题