使用Microsoft.Web.Administration.ServerManager修改web.config system.ServiceModel / client / endpoint

时间:2013-08-20 13:23:43

标签: c# .net xml web-config wcf-binding

尝试使用Microsoft.Web.Administration.ServerManager库修改我的Web应用程序web.config文件时,我有点担心。

我要做的是修改位于client的{​​{1}}部分。

基本上我想参加这样的参赛

System.ServiceModel

并将其更改为此

<system.serviceModel>
    <client>
        <endpoint address="net.tcp://localhost:123/MyService.svc"
                  behaviorConfiguration="DefaultBehaviour" binding="netTcpBinding"
                  bindingConfiguration="TCPBinding" contract="MyService.IMyService"
                  name="MyService" />
    </client>
</system.serviceModel>

我已经能够检索到这样的SectionGroup

<system.serviceModel>
    <client>
        <endpoint address="net.tcp://192.168.0.1:123/MyService.svc"
                  behaviorConfiguration="DefaultBehaviour" binding="netTcpBinding"
                  bindingConfiguration="TCPBinding" contract="MyService.IMyService"
                  name="MyService" />
    </client>
</system.serviceModel>

但我完全不知道如何修改实际的条目。

任何指导都将得到衷心的感谢。

1 个答案:

答案 0 :(得分:0)

您可以像这样修改属性:

 using (ServerManager server = new ServerManager()) 
 {
     var siteConfig = server.Sites.First().GetWebConfiguration();
     var section = siteConfig.GetSection("system.serviceModel/client/endpoint");
     section.SetAttributeValue("address", "net.tcp://192.168.0.1:123/MyService.svc");
     server.CommitChanges();
  }