我无法找到关于如何在appdata中登录文件的明确答案/示例
C:\ Documents and Settings \ All Users \ Application Data \ CompanyName \ ApplicationName \ Logs \ app.log
我不想对app.config
中的路径进行“硬编码”,而宁愿使用Environment.SpecialFolder.CommonApplicationData
答案 0 :(得分:1)
是的,请看my answer to this question。它详细说明了如何在log4net配置中配置此路径设置。
答案 1 :(得分:-1)
一种方式:
log4net.Repository.Hierarchy.Hierarchy hierarchy = (log4net.Repository.Hierarchy.Hierarchy)log4net.LogManager.GetRepository();
var appenders = hierarchy.GetAppenders();
foreach (var appender in appenders)
{
FileAppender fileAppender = appender as FileAppender;
if (fileAppender != null)
{
fileAppender.File = Path.Combine(Environment.SpecialFolder.CommonApplicationData, "myLogFile.log");
fileAppender.ActivateOptions();
}
}