为什么大多数log4net示例通过执行以下操作来获取类的记录器:
private static ILog logger =
LogManager.GetLogger(
System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
而不只是传递typeof(MyClass):
private static ILog logger = LogManager.GetLogger(typeof(MyClass));
除了第一个选项不需要您键入特定的类名之外,还有其他原因吗?
最佳答案
我想你有原因。我这样做是为了不必担心类名,而只需将样板代码复制并粘贴到新类中即可。
有关官方答案,请参见:如何在静态块中获得类的全名?在log4net faq