如何在VS2010下使用Log4Net
log4net has a known issue of referencing a System.Web component which is not part of the .NET Framework 4 Client Profile and the VS2010 by default sets project target to be the lightweighted Client Profile. The solution is to change the target to .NET Framework 4:
Right click project -> properties -> Application. Change:
.
NET
Framework
4
Client
Profile
to be:
.
NET
Framework
4
... and that should work, i.e. you can use log4net again...
来自:http://stackoverflow.com/questions/1767253/log4net-with-net-4-0
范例:
App.config
- <? xml version = "1.0" ?>
- < configuration >
- < configSections >
- < section name = "log4net" type ="log4net.Config.Log4NetConfigurationSectionHandler,
- log4net-net-1.0" />
- </ configSections >
- < log4net >
- < root >
- < level value = "ALL" />
- < appender-ref ref = "LogFileAppender" />
- </ root >
- < appender name = "LogFileAppender" type = "log4net.Appender.FileAppender" >
- < param name = "File" value = "log-file.txt" />
- < param name = "AppendToFile" value = "true" />
- < layout type = "log4net.Layout.PatternLayout" >
- < param name = "ConversionPattern" value = "%d [%t] %-5p %c [%x] <%X{auth}>%n - %m%n" />
- </ layout >
- </ appender >
- </ log4net >
- < startup >
- < supportedRuntime version = "v4.0" sku = ".NETFramework,Version=v4.0" />
- </ startup >
- </ configuration >
注意:configSections节点和startup节点的顺序,否则只见文件而无法输出日志
AssemblyInfo.cs中添加
- [assembly: log4net.Config.DOMConfigurator(ConfigFileExtension = "config" , Watch = true )]
.cs代码正常使用
- log4net.ILog log = log4net.LogManager.GetLogger( "MyLogger" );
- log.Debug("test" );
- 原文地址:http://blog.csdn.net/Maths_bai/archive/2010/12/13/6074337.aspx