我有一个WCF独立服务,它在我的app.config文件中使用log4net及其所有配置,并且在第一次运行服务时加密配置文件。我现在有这个设置为一个控制台应用程序运行,但是当我启动,加密的配置文件保存后直,服务打印出加密配置文件时出现log4net错误
log4net的:ERROR XmlHierarchyConfigurator:找不到物业 [的EncryptedData]到上 [log4net.Repository.Hierarchy.Hierarchy]
其迷惑我,因为在新加密配置文件的log4net的部分一个EncryptedData部分中设置的对象。
我使用加密的配置文件部分:
section.SectionInformation.ProtectSection("DataProtectionConfigurationProvider");
我log4net的配置文件部分看起来像(前)这样的:
<configuration>
<configSections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" restartOnExternalChanges="false" />
</configSections>
<log4net>
<appender name="ConsoleAppender" type="log4net.Appender.ConsoleAppender" >
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline" />
</layout>
</appender>
<root>
<appender-ref ref="ConsoleAppender" />
</root>
</log4net>
后:
<log4net configProtectionProvider="DataProtectionConfigurationProvider">
<EncryptedData>
<CipherData>
<CipherValue>AQAAANCMnd8BFdERjHoAw <etc> </CipherValue>
</CipherData>
</EncryptedData>
</log4net>
Log4net仍然可以与加密配置一起工作(编辑:在调试中;当在发布中作为服务运行时(但是,因为它没有记录任何东西)
所以,谁能告诉我这个错误是什么,以及如何修复我的代码,以阻止它被抛出。