嗨,我有一个常见的Utilities类,它将在类中记录一些信息,我将从不同的类中调用此类.应该如何声明我的Nlog,以便我可以将记录器与不同的调用者分开.
我有以下示例,我希望Nlog保持CallerA和CallerB记录器中的Utilities类生成的日志相应,我应该将我的记录器引用传递给Utilities类吗?我听说为一个班级保留一个记录器是一个好习惯.
非常感谢您的建议=)
namespace Common { public class Utilities { private static readonly Logger _logger = LogManager.GetCurrentClassLogger(); public void DoSomething() { _logger.Info("log here"); } } } namespace ProjectA { public class CallerA { private static readonly Logger _logger = LogManager.GetCurrentClassLogger(); public void CallerMethod() { new Common.Utilities().DoSomething(); } } } namespace ProjectB { public class CallerB { private static readonly Logger _logger = LogManager.GetCurrentClassLogger(); public void CallerMethod() { new Common.Utilities().DoSomething(); } } }
最佳答案 在这种情况下,我会在ILogger上写一个C#扩展名
所以
_logger.DoSomething()