如何使用 log4net 在 AppData 文件夹中创建文件
Posted
技术标签:
【中文标题】如何使用 log4net 在 AppData 文件夹中创建文件【英文标题】:How to create a file in the AppData folder using log4net 【发布时间】:2014-07-30 22:23:43 【问题描述】:如何在 appData 文件夹中创建日志文件。路径是 C:\Users\MYNAME\AppData\Roaming\Project\My Project\Application。一旦我的项目开始,项目文件夹就会在此路径上创建,该路径是硬编码的。如何使用 log4net 在此文件夹中添加我的日志文件? 我已经在配置文件中进行了更改
<?xml version="1.0"?>
<configuration>
<configSections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/>
</configSections>
<log4net>
<appender name="Console" type="log4net.Appender.ConsoleAppender">
<layout type="log4net.Layout.PatternLayout">
<!-- Pattern to output the caller's file name and line number -->
<conversionPattern value="%5level [%thread] (%file:%line) - %message%newline" />
</layout>
</appender>
<appender name="RollingFile" type="log4net.Appender.RollingFileAppender">
<file value="$APPDATA\\Roaming\\Project\\My Project\\Application\\Log.txt"/>
<appendToFile value="true" />
<maximumFileSize value="100KB" />
<maxSizeRollBackups value="10" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%level %thread %logger - %message%newline" />
</layout>
</appender>
<root>
<level value="ALL" />
<appender-ref ref="Console" />
<appender-ref ref="RollingFile" />
</root>
</log4net>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/>
</startup>
<system.serviceModel>
<bindings />
<client />
</system.serviceModel>
</configuration>
这不会在此文件夹中创建任何文件。并且所有权限都被授予管理员权限。
【问题讨论】:
【参考方案1】:看来您的做法是正确的,但在某些情况下,变量的大小写似乎有所不同:An other question on the subject
你可以试试:$AppData
有效
【讨论】:
对不起,我可以创建它。它应该是$LocalAppData
(用大括号替换圆括号)。如果有人需要澄清:en.wikipedia.org/wiki/Bracket以上是关于如何使用 log4net 在 AppData 文件夹中创建文件的主要内容,如果未能解决你的问题,请参考以下文章