我想根据客户端应用程序配置文件中的自定义信息动态更改从客户端调用的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