我为 log4net 的ILog
接口创建了以下扩展方法:
public static void Debug(this ILog log, IDiagnosticMessage message)
{
// do some stuff with the IDiagnosticMessage and end up calling ILog.Logger.Log with the result
}
编译器似乎不想使用这种方法。当我ILog.Debug
使用IDiagnosticMessage
参数调用时,它总是使用 log4net 的ILog.Debug(object)
重载。
如果没有显式调用静态方法,是否有人知道我可以做些什么来让编译器调用我的扩展而不是接口方法?