.net – 如何在配置文件中初始化log4net GlobalContext属性

有没有办法在配置文件中定义全局上下文属性,如果我不想在代码中设置它

log4net.GlobalContext.Properties["AppName"] = "MyCoolApp";

最佳答案 Log4net不提供此功能,但您可以自己轻松构建它:

>将一些键/值对存储在您选择的配置文件中
>在启动时读取键值对并将其分配给全局上下文

第二部分是这样的:

Dictionary<string, string> pairs = ReadGlobalContextConfiguration();
foreach (var pair in pairs)
{
    log4net.GlobalContext.Properties[pair.Key] = pair.Value;
}

第一部分取决于您要存储信息的位置.有很多选择:

> App / Web.config中的配置部分
>简单的Xml文件
>简单文本文件,每行有key = value条目

点赞