请查看我以下的代码...
我该如何做到这一点?我更喜欢避免使用 switch 语句。我正在寻找一种干净的面向对象方法。
public enum LogType
{
Debug,
Info,
Warn,
Error,
Fatal
}
private static readonly ILog log =
log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
public void LogError(LogType logtype, string message)
{
XmlConfigurator.Configure();
if (logtype == LogType.Debug)
log.Debug(message);
else if (logtype == LogType.Error)
log.Error(message);
}
我不喜欢所有的if-else语句,认为有更加简洁的方式来编写代码。如何重构它呢?log类有不同的方法,例如Debug、Error等等。
我想只需要调用一个方法,就可以自动处理这些问题。
LogMyError(LogType.Debug, "I am just logging here");
我该如何做到这一点?我更喜欢避免使用 switch 语句。我正在寻找一种干净的面向对象方法。