我想根據客戶端應用程序配置文件中的自定義信息動態更改從客戶端調用的WCF服務的地址。使用行爲動態更改WCF端點地址
我第一次嘗試是創建一個終結點行爲,並實施IEndpointBehavior.Validate
方法,實現類似如下:
void IEndpointBehavior.Validate(ServiceEndpoint endpoint)
{
... endpoint.Address = new EndpointAddress(...);
}
客戶端試圖連接之前,並出現成功改變這種方法被稱爲端點地址。但是,WCF基礎結構似乎仍嘗試使用原始地址進行連接。
有什麼方法可以使用端點行爲或其他WCF擴展點來實現這一點?
爲什麼不直接使用帶有'EndPointAddress'的代理類構造函數? – 2010-09-15 18:28:34
我不能實現我想要的使用代理類構造函數(實際上在我的情況下是ChannelFactory構造函數),因爲那時我還不知道要使用哪個地址。 –
Joe
2010-09-15 18:39:34
如何在創建代理時不知道地址? – 2010-09-15 19:11:44