我開發了一個正在由另一個應用程序中的加載項體系結構使用的庫。我的庫使用log4net進行日誌記錄。如何使用System.Configuration.Configuration配置log4net
這個測試工作正常,如在app.config的位置就可以解決和log4net的使用配置:
log4net.Config.XmlConfigurator.Configure();
當作爲加載的加載它不可能解決應用程序配置使用這種方法。
一種選擇是使用通過加載項體系結構傳入的配置來配置log4net。可以使用的配置類似如下的結果:
string asmFile = System.Reflection.Assembly.GetExecutingAssembly().Location;
System.Configuration.Configuration dllConfig = System.Configuration.ConfigurationManager.OpenExeConfiguration(asmFile);
如何能在System.Configuration.Configuration與log4net.Config.XmlConfigurator使用嗎?
我可以從配置中看到適用的ConfigurationSection,但無法看到輕鬆獲取XmlConfigurator.Configure()所需的ILoggerRepository或XmlElement的方法。
System.Configuration.ConfigurationSection configSection = configuration.GetSection("log4net");
你不能添加您的配置文件使用您的庫項目的地圖嗎? – Carra 2011-03-03 22:53:05
@卡拉,你能詳細說明一下嗎?對於這個項目,我將該庫傳遞給外部開發人員,以便使用和集成加載項體系結構項目。我無法控制它們如何使用它(除了我發佈的API),但需要爲它們提供一種方法來配置它。 – 2011-03-03 23:09:22