我有一个NLog变量,我想在运行时在C#中设置它的值:
LogManager.Configuration.Variables["MyVarName"] = DetermineMyVarValue();
但这是NLog代码。我正在考虑使用Common.Logging,而不是直接使用NLog。我不知道如何通过Common.Logging来做这种事情。有办法吗?
或者,也许有一种方法可以在运行时从NLog配置文件本身中完成它?那么Common.日志记录可以被回避吗?例如:
<variable name="MyVarName" value="MyStaticClass.DetermineMyVarValue()"/>
最好在第一次使用时调用一次该函数,而不是每次引用变量时都调用?
还没有找到直接的答案,但我已经找到了一些对我来说足够好的东西,所以我在这里提到它,以防它将来会帮助到某人:
我只是编写了一个自定义布局渲染器,而不是一个变量,这非常简单。