【发布时间】:2016-03-04 11:32:44
【问题描述】:
我指的是优秀的帖子:
Log4Net, how to add a custom field to my logging
但它并没有给我完整的解决方案。
记录“这是一个测试”之类的字符串没有问题,但如果我想记录一个变量,它会响应(null)。
这是我截断的代码不起作用:
log4net.GlobalContext.Properties["versionid"] = Variables.IDVERSION;
这是我的工作代码:
log4net.GlobalContext.Properties["versionid"] = " This is a test";
虽然,IDVERSION 是在我的代码 c# 中系统更新的公共属性。
有没有人知道如何解决这个问题?我想我已经接近解决方案了。
【问题讨论】:
-
您是在将
Variables.IDVERSION的值分配给log4net 属性之前还是之后设置它?请注意,log4net 不会跟踪您提供的任何新值 - 您也需要每次都更新 log4net 属性。 -
我在第一次尝试之后分配了变量。现在,我在更新 log4net 属性之前分配了变量的值。它运行良好。简单而合乎逻辑。谢谢你的帮助。下次我应该多想一点。:-)
标签: c# log4net log4net-appender