gpt4 book ai didi

asp.net-mvc - 如何在我的 MVC3 项目中正确配置 Ninject.Extensions.Logging.Log4Net

转载 作者:行者123 更新时间:2023-12-04 01:07:38 26 4
gpt4 key购买 nike

我正在尝试正确使用 Ninject 将 log4net 日志记录注入(inject)我的 MVC3 应用程序。我正在使用 Ninject.MVC3 包,所以我有自动扩展 App_Start 方法并包含绑定(bind)所有依赖项的 RegisterServices 方法的 NinjectMVC3 类。我也有 Ninject.Extensions.Logging.Log4Net 包,但我不知道如何使用它。我已经知道如何在我的 web.config 中配置 log4net,但不知道如何将此扩展用于 DI。

我已阅读以下所有文章/帖子,但似乎都没有定义如何正确设置项目以进行 DI 日志记录。

http://dotnetdarren.wordpress.com/2010/07/29/logging-in-mvc-part-4-log4net/ , 达伦
提供了一篇很棒的文章,但似乎没有处理 DI(至少我没有看到它)。

Using Ninject to fill Log4Net Dependency ,
Remo Gloor 在这里声明扩展应该提供实现所需的所有内容,但它没有显示如何实例化它的代码。

ninject.extensions.logging 的文档位于 https://github.com/ninject/ninject.extensions.logging/wiki/Using充其量是非常有限的。我已经重读了很多遍,但仍然没有看到如何在 NinjectMVC3 类中使用绑定(bind)注入(inject),或者如何从我的 Controller 类中调用记录器的具体示例。

在最有希望的文章中,Moosaka 在 Ninject.Extensions.Logging.Log4net unexpected behavior 上提供了一些很棒的代码。 ,但是当我尝试它时,我在 LoggerFactory 中得到一个编译错误 ILogger logger = new Logger(type);说明“此处无法访问 protected 构造函数'Logger'”。此外,他还表示“将这一切都塞进一个单独的类库中”。这是否意味着作为一个整体独立的项目?

我只是迷失在所有不同的选项和过时的帖子中,并且想了解如何在我的 MVC3 项目中使用 Ninject 和 Log4Net 的依赖注入(inject)。此外,如果重要的话,我所有的 Ninject 代码都在我的域项目中,但日志记录需要从域和 Web 项目完成(并在我的单元测试中模拟)。任何帮助表示赞赏。

最佳答案

除了正常的 log4net 配置之外,您不必配置任何东西。

您所要做的就是在要记录的任何地方注入(inject) ILogger。
https://github.com/ninject/ninject.extensions.logging/wiki/Using

关于asp.net-mvc - 如何在我的 MVC3 项目中正确配置 Ninject.Extensions.Logging.Log4Net,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9792237/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com