代码之家  ›  专栏  ›  技术社区  ›  Shane Fulmer Lasse V. Karlsen

在Asp.net MVC和Castle Windsor中使用Common.Logging

  •  4
  • Shane Fulmer Lasse V. Karlsen  · 技术社区  · 14 年前

    我想使用Common.Logging删除对特定日志框架的依赖,但我不确定如何使用Castle Windsor IoC容器连接ILog接口。有办法吗?谢谢!

    2 回复  |  直到 14 年前
        1
  •  4
  •   roelofb    14 年前

    创建你自己的公共设施。日志记录,检查它是如何为现有的做的 Logging Facility in Windsor . 常见。日志记录可能有一个日志记录工厂,您可以在设施中使用它来创建日志记录程序。

    或者你可以省去工作 Castle's ILogger 使用日志工具:Windsor将在您的类中为您注入ILogger实例。与log4net和NLog v2协同工作。

        2
  •  7
  •   Community CDub    7 年前

    你真的想两者兼得吗?(使用Common.Logging并通过Castle Windsor IoC注入?)使用Common.Logging可以使你的应用程序不必对特定的日志框架(例如log4net、NLog、Enterprise Logging)有严格的依赖性。我不使用Castle,但我的理解是它的伐木设施也有类似的目标您可以将Castle Windsor配置为使用特定的日志框架(如log4net或NLog),但您的应用程序不需要知道最终使用的是哪个日志框架。

    注射普通。通过温莎城堡伐木看起来像是带着腰带和吊带来撑起你的裤子!您将通过Castle Windsor自己的日志抽象事实注入日志抽象!

    我的猜测是你真的想使用一种或另一种技术(普通伐木或温莎城堡的伐木设施)。

    如果你真的想注入Common.Logging通过Castle Windsor,你可能会发现这个链接很有用:

    Logging with Castle.Facilities.Logging and log4net

    其中,它描述了如何编写您自己的定制城堡温莎伐木设施,由城堡温莎注入。