big*_*mac 12 asp.net-mvc log4net ninject
我正在尝试正确使用Ninject将log4net日志记录注入我的MVC3应用程序.我正在使用Ninject.MVC3包,所以我有NinjectMVC3类,它自动扩展App_Start方法并包含绑定所有依赖项的RegisterServices方法.我也有Ninject.Extensions.Logging.Log4Net包,但我不知道如何使用它.我已经知道如何在我的web.config中配置log4net,但不知道如何在DI中使用此扩展.
我已经阅读了以下所有文章/帖子,但它们似乎都没有定义如何正确设置DI日志的项目.
在http://dotnetdarren.wordpress.com/2010/07/29/logging-in-mvc-part-4-log4net/,Darren提供了一篇很棒的文章,但似乎没有处理DI(至少我没有看得出来.
在使用Ninject填充Log4Net依赖关系时,Remo Gloor在此声明扩展应提供实现所需的全部内容,但它没有显示如何实例化它的代码.
https://github.com/ninject/ninject.extensions.logging/wiki/Using上的ninject.extensions.logging文档充其量是非常有限的.我已多次重读它,但仍然没有看到如何在NinjectMVC3类中使用绑定注入,或者例如如何从我的控制器类调用记录器的具体示例.
在最有希望的文章中,Moosaka在Ninject.Extensions.Logging.Log4net意外行为中提供了一些很棒的代码,但是当我尝试它时,我在LoggerFactory中得到一个编译错误,ILogger logger = new Logger(type);声明"无法在此处访问受保护的构造函数'Logger'".此外,他声称"把整个烂摊子扔进一个单独的类库".这是否意味着整个单独的项目?
我只是迷失在所有不同的选项和日期的帖子中,并希望在我的MVC3项目中如何使用Ninject和Log4Net的Dependancy Injection进行任何输入.此外,如果它很重要,我的所有Ninject代码都在我的域项目中,但是日志需要从域和Web项目完成(并在我的单元测试中进行模拟).任何帮助表示赞赏.
除了正常的log4net配置之外,您不必配置任何其他内容.
您所要做的就是在任何想要记录的地方注入ILogger. https://github.com/ninject/ninject.extensions.logging/wiki/Using
| 归档时间: |
|
| 查看次数: |
10067 次 |
| 最近记录: |