如果使用Common.Logging,可以以编程方式修改NLog的变量吗?

时间:2016-03-22 21:05:35

标签: c# .net logging nlog common.logging

我有一个NLog变量,我想在C#中设置运行时的值:

LogManager.Configuration.Variables["MyVarName"] = DetermineMyVarValue();

但那是NLog代码。我正在考虑使用Common.Logging而不是直接使用NLog。我不知道如何通过Common.Logging来做这种事情。有办法吗?

或者,也许有一种方法可以在运行时从NLog配置文件中自行完成吗?那么Common.Logging可以回避吗?例如,像:

<variable name="MyVarName" value="MyStaticClass.DetermineMyVarValue()"/>

最好在第一次使用时调用一次该函数,而不是每次引用该变量时调用该函数?

1 个答案:

答案 0 :(得分:0)

还没有找到直接答案,但我发现了一些对我的目的来说足够好的东西,所以我在这里提到它以防将来可能对某人有所帮助:

而不是变量,我只写了一个custom layout renderer,这非常简单。