什么是Enterprise Library 5.0中的log4net.Config.XmlConfigurator

时间:2014-09-01 12:31:24

标签: c#-4.0 enterprise-library log4net-configuration enterprise-library-5

我正在使用VS2010并希望在MS Enterprise Library 5.0中找到等效的log4net.Config.XmlConfigurator。就像可以将日志配置文件的位置嵌入AssemblyInfo.cs中的log4net一样

[assembly: XmlConfigurator(ConfigFile = @"C:\Test\Log4Net.config", Watch = true)]

我希望能够为Enterprise Library指定配置文件。
有没有办法做到这一点?

1 个答案:

答案 0 :(得分:1)

Enterprise Library 5中没有类似的属性。一种方法是使用FileConfigurationSource以编程方式加载所需的配置文件,然后配置Enterprise Libary。例如:

FileConfigurationSource fcs = 
    new FileConfigurationSource(
        @"C:\Test\entlib.config"
    );

var builder = new ConfigurationSourceBuilder();
builder.UpdateConfigurationWithReplace(fcs);

EnterpriseLibraryContainer.Current = 
    EnterpriseLibraryContainer.CreateDefaultContainer(fcs); 

如果您愿意,可以创建自己的Enterprise Library XmlConfigurator来包装上面的代码。但请注意,如果多个程序集都使用不同的配置文件配置Enterprise Library,则会覆盖其他配置。