【问题标题】:How to use Log4net from Nuget with Visual Studio in the ASP.NET Web Form (Easy method)如何在 ASP.NET Web 窗体中使用来自 Nuget 的 Log4net 和 Visual Studio(简单方法)
【发布时间】:2017-03-03 02:45:06
【问题描述】:
大家好,我知道如何在我的 ASP.NET MVC 项目 [Reference] 中快速简便地构建 Log4Net,但是如何在纯“Web 表单”项目中进行构建,请帮我解决这个问题,一步一步谢谢。
顺便说一句,我也一直在寻找一些解决方案来解决我的问题,但这对我来说不是一个好方法,就像 Stackoverflow 上的以下问题
1. 将 log4net 与 asp.net 网络表单一起使用
2. 无法在 ASP.NET Web 窗体站点中使用 log4net 将日志写入文件
PS:我也会尝试解决这个问题,希望你或我能找到一些好的想法来解决这个问题。
【问题讨论】:
标签:
asp.net
webforms
nuget
log4net
【解决方案1】:
为 Web 表单处理此问题的 4 个步骤
第 1 步:
使用 Nuget 获取 Log4Net
第 2 步:
在全球请把这句话“log4net.Config.XmlConfigurator.Configure();”放在Application_Start
第 3 步:
在Web.Config中请在web.config中写下如下代码
<configSections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
</configSections>
<log4net debug="true">
<appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
<file value="logs\log.txt" />
<appendToFile value="true" />
<rollingStyle value="Size" />
<maxSizeRollBackups value="10" />
<maximumFileSize value="100KB" />
<staticLogFileName value="true" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%-5p %d %5rms %-22.22c{1} %-18.18M - %m%n" />
</layout>
</appender>
<root>
<level value="DEBUG" />
<appender-ref ref="RollingLogFileAppender" />
</root>
</log4net>
最后一步:
将以下代码放在要记录日志的页面中
private static log4net.ILog Log { get; set; }= log4net.LogManager.GetLogger(typeof(_03_account));
protected void Page_Load(object sender, EventArgs e)
{
Log.Debug("Debug message");
//log.Warn("Warn message");
//log.Error("Error message");
//log.Fatal("Fatal message");
}