如何将Castle Windsor 2.0和Log4Net结合使用?

时间:2009-06-30 23:33:09

标签: log4net castle-windsor

我想使用Castle Windsor 2.0作为我的应用程序的控制容器的反转,并使用log4net 1.2.10来提供日志记录服务。一些谷歌搜索表明Windsor提供了一些日志工具,我应该在Windsor实例化的类上创建公共ILogger属性。这听起来很容易,但是我需要添加到app.config中,以便获得一个使用log4net的ILogger?

我见过的例子似乎来自Castle Windsor的旧版本,因为它们引用的DLL和命名空间不在我下载的版本中。特别是,我没有看到包含日志记录对象的Castle.Facilities。*命名空间。其中一些似乎已被移至Castle.Core.Logging?

感谢任何帮助。

更新:

根据以下答案和进一步研究,这是我目前的理解。

Castle Project软件包版本1.0 RC3包含许多不同的组件,包括MicroKernel,Windsor和Services项目。我想要的log4net集成来自Services项目。所以,如果我要下载1.0 RC3包,我需要的是一个不错的包。

然而,1.0 RC3版本真的很旧。

至于最近一段时间,Castle Project组件仅单独提供。由于我只下载了Windsor 2.0,因此我不会看到最新最好的Services项目。此外,服务项目自1.0 RC3以来尚未正式发布。我不确定我是否可以引用1.0 RC3版本或者需要从最新代码构建我自己的版本。

2 个答案:

答案 0 :(得分:2)

以下是我所需要的,我相信:Where & How Castle Windsor sets up logging facility

答案 1 :(得分:1)

要使用Castle Windsor 2.0的日志记录工具,您必须从subversion存储库(http://svn.castleproject.org:8080/svn/castle/tags/Windsor-2.0)中提取源代码并启动ClickToBuild.cmd

然后可以在\ build \ net-3.5 \ release

中找到必要的程序集(Castle.Facilities.Logging.dll,Castle.Services.Logging.Log4netIntegration.dll)。

如果你不想拉动源并自己构建它,你可以转到http://www.castleproject.org:8090/并下载Windsor 2.x Release版本的构建工件。