2009-08-20 97 views
0

我有一个WCF客户端,指的是托管在同一台机器上的多个服务。像这样的例子WCF客户端配置:集中端点地址

<client> 
    <endpoint address="net.tcp://localhost:8731/TrackingService" binding="netTcpBinding" ... 
    </endpoint> 
    <endpoint address="net.tcp://localhost:8731/CommonService" binding="netTcpBinding"... 
    </endpoint> 
</client> 

是可以修改我的app.config为了保持端点地址的

net.tcp://localhost:8731 

部分在不同的变量,因此,当我将部署我必须改变它曾经?

也许一个编程聪明的方式来做到这一点?我唯一的需要是改变“地址:端口”。

预先感谢您

回答

1

不,不幸的是,在客户端,还有什么能像<baseAddress>像在服务器端,您可以全局设置。

恐怕,每个端点声明都必须包含完整的完整URL。

马克

1

你总是可以编程创建您的客户端,并从正常的AppConfig值读取的地址。像这样

MyClient client= 
       new MyClient(new BasicHttpBinding(), new EndpointAddress(ConfigurationManager.AppSettings.Get("ServiceAddress");)