c# - Log4net - 无法写入
问题描述
我在程序中使用 log4net 配置时遇到问题。我在其他程序中使用了这个配置,它很棒!
我不明白他为什么不写。
这是我的配置
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/>
</configSections>
<log4net>
<root>
<level value="ALL" />
<appender-ref ref="FileRolling" />
</root>
<appender name="FileRolling" type="log4net.Appender.RollingFileAppender">
<file value="D:\Historique\historique_CNC.csv" />
<appendToFile value="true" />
<rollingStyle value="Size" />
<maxSizeRollBackups value="5" />
<maximumFileSize value="2MB" />
<staticLogFileName value="true" />
<PreserveLogFileNameExtension value="true" />
<LockModel type = "log4net.Appender.FileAppender + MinimalLock" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%message%newline" />
</layout>
</appender>
</log4net>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
</startup>
</configuration>
在我的程序集中,我写了这个:
[assembly: log4net.Config.XmlConfigurator(ConfigFile = "log4net.config")]
当 My WindowsForm 被调用时,我创建了我的 Log :
public partial class MainVisu : Form
{
public FocasCommHist CallPrg;
public static readonly log4net.ILog log = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
public MainVisu()
{
InitializeComponent();
CallPrg = new FocasCommHist();
}
}
在我的程序中,我像这样使用我的 Log4net:
// Test LOG4net
MainVisu.log.Info(DateTimeExe);
谢谢你的帮助!
解决方案
推荐阅读
- vuex - 如何编辑突变中的数组并刷新它?
- c# - 当我将参数传递给 RelayCommand 时,为什么我的绑定按钮被禁用?
- javascript - 从数组中获取丢失元素的数量
- bash - 在 Bash 脚本中使用 inotifywait 的输出来删除特定文件
- google-chrome - 为什么 getContext() 在 Ubuntu 上的 Chrome 上返回 null
- netsuite - 带有过帐交易的脚本 GL 条目
- node.js - Typescript Winston 编译错误
- javascript - 外部组件道具的更改不会触发 componentDidUpdate(但会触发重新渲染)
- c# - 无法连接到在 C# 程序中使用 Docker 启动的 RabbitMQ(使用 RabbitMQ.Client)
- python - SQLAlchemy - session.execute 和 bindparams 的问题 - sqlalchemy.exc.OperationalError: (sqlite3.OperationalError)