如何在app.config中使用AppSettings

时间:2012-08-12 13:32:16

标签: c# configuration app-config appsettings

我在客户端有一个wcf配置。我需要通过ServerIP名称为App.Config中的其他部分而不是localhost使用AppSettings中的密钥,因为我的端点计数很多,而我的服务器ip是可变的。我怎么能这样呢?

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <appSettings>
    <add key="ServerIP" value="localhost"/>
  </appSettings>

  <system.serviceModel>
    <bindings>
        ...
    </bindings>
    <client>

      <endpoint address="net.tcp://localhost:9000/WcfServices/Person/PersonService" 
        binding="netTcpBinding" bindingConfiguration="RCISPNetTcpBindingWpf"
        contract="Common.ServiceContract.IPersonService" name="BasicHttpBinding_IPersonService">
        <identity>
          <dns value="localhost" /> <!--How use ServerIP in appSettings instead of localhost-->
        </identity>
      </endpoint>           

    </client>
  </system.serviceModel>
</configuration>

2 个答案:

答案 0 :(得分:0)

通常你不能这样做,但是如果你使用的是VisualStudio 2010,你可以使用web.config transformations。我认为你必须使用web部署,或者自己运行MSBuild任务来运行转换。 / p>

答案 1 :(得分:0)

您无法在app.config中使用appsettings。 你有两种可能性: - 通过代码使用appsettings,如制作我们的自定义部分 http://haacked.com/archive/2007/03/12/custom-configuration-sections-in-3-easy-steps.aspx - 使用占位符使用nant构建或msbuild How to use MSbuild property in TransformXml task?