代码之家  ›  专栏  ›  技术社区  ›  michele

wcf client config:集中端点地址

  •  0
  • michele  · 技术社区  · 16 年前

    我有一个wcf客户机wicht指的是在同一台机器上托管的多个服务。像这个例子

    <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
    

    端点地址的一部分在另一个变量中,所以当我部署时,必须更改它一次?

    也许是一个聪明的编程方法?我只需要更改“地址:端口”。

    提前谢谢你

    2 回复  |  直到 16 年前
        1
  •  1
  •   marc_s    16 年前

    不,不幸的是,在客户方面,没有什么比 <baseAddress> 就像在服务器端一样,可以全局设置。

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

    马克

        2
  •  1
  •   softveda    16 年前

    您始终可以通过编程方式创建客户机并从普通的appconfig值读取地址。这样地

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