2009-08-20 133 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");)