2010-09-10 107 views
2

我已经将我的VSTO Excel加载项设置为使用log4net进行日志记录。不幸的是,我似乎无法通过app.config(我通过ClickOnce与外接程序一起交付)进行配置。在VSTO中配置log4net

我已阅读http://www.darinhiggins.com/?p=13其中列出了一些方法来获得的app.config的文件名,然后用

log4net.Config.XmlConfigurator.Configure(fileInfo) 

但是配置的log4net的途径这个博客列表似乎很容易出错的,我(他们“臭”)。

之类的东西

ConfigurationManager.GetSection 

让我相信了.NET框架确切地知道从哪里得到的文件,必须有检索框架,而不是有这个信息的数字出来对我自己的一种方式。然而,XmlConfigurator又只接受文件名,流或xml节点...

(为什么我认为它现在不工作: \ Data \ Debug.log,但在GetLogger(...).Debug(...)之后,仍然没有Debug.log ...)。我已经在其他地方使用完全相同的配置,成功。

回答

3

XmlConfigurator.Configure();使用app.config文件。这应该工作,因为ConfigurationManager似乎能够读取配置文件。

+1

引用的博客指出:“...但不幸的是,由于您的VSTO插件是一个DLL,因此默认情况下,log4net将查找当前的app.config文件,例如,如果您在Word中运行,将WinWord.exe.config放在WinWord.exe所在的文件夹中。“ - 我希望它使用通过ClickOnce传递的app.config ... – chiccodoro 2010-09-10 15:19:21

+0

我是怎么弄错的!这个资源似乎只是完全错误的?我已经将你的代码行添加到了我的插件启动方法中,现在它工作正常! (如果可能的话我会试着对我自己的问题进行投票...) – chiccodoro 2010-09-10 15:39:20