如果我执行 NLog.Trace():
logger.Trace("Json: {0}", Newtonsoft.Json.JsonConvert.DeserializeObject(myObject));
我的最低级别出现错误:
<logger name="*" minlevel="Error" writeTo="mail" enabled="false" />
我的对象会被反序列化吗?是的,当然是的。但我怎样才能避免这种情况呢?
if(logger.IsTraceEnabled)
logger.Trace("Json: {0}", Newtonsoft.Json.JsonConvert.SerializeObject(myObject));
See 是否启用跟踪 http://nlog-project.org/documentation/v2.0.1/html/P_NLog_Logger_IsTraceEnabled.htm.
对于记录调用本身可能很昂贵(如上面的情况)或在重复的高调用循环中的调用来说,这是一个很好的做法。对于其他所有内容,通常不需要添加检查,因为框架本身在调用内执行相同的检查。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)