.net程序集和个人配置

时间:2012-05-20 10:14:53

标签: c# configuration spring.net .net-assembly

我的主要程序集是一个Web应用程序。它使用spring.net框架将其他程序集加载到其执行的应用程序域中。所以这自然意味着所有其他程序集必须从web.config获取其配置值(例如连接字符串和应用程序设置)。

有没有办法可以覆盖这个?一些配置可以来自web.config;其他人必须分开居住。我应该采用什么样的方法来开发这样的.net程序集?目标是,一旦这个应用程序进入客户端环境,并且客户端决定在遥远的未来某处添加程序集,他应该能够毫不费力地这样做,并且更改该程序集的配置而不影响其他程序集。

所以最终我必须提出一种基于框架的方法?这个效果已经有了什么吗?或者我该如何解决这个问题?我将面临哪些挑战?

1 个答案:

答案 0 :(得分:0)

Web配置文件允许您创建自定义程序集特定的配置部分。

查看http://msdn.microsoft.com/en-us/library/2tw134k3.aspx了解详情

此外,您可以将其他文件指定为配置解析器在.net

中使用和解析的配置文件

您可以使用配置文件中的config source选项执行此操作:例如

在App.config / Web.config

<configuration>
  <system.serviceModel>
    <services configSource="Services.config" >
    </services> 
  </system.serviceModel>
</configuration>

创建一个名为Services.config的文件,其中包含:

<services>
  <service name="SomeNameSpace.MyService"
           behaviorConfiguration="MyServiceBehaviour">
    <host>
      <baseAddresses>
        <add baseAddress="http://localhost:1234/service"/>
      </baseAddresses>
    </host>
    <endpoint address="net.tcp://localhost:8000/service"
              binding="netTcpBinding"
              bindingConfiguration="Binding1"
              contract="SomeNameSpace.IService" />
  </service>
</services>