为什么有log4net Info(object,Exception)方法

时间:2016-03-04 10:18:35

标签: c# logging log4net

我想知道为什么log4net提供方法

Info(object message, Exception e) 

(当然还有警告,错误等)

为什么message参数不是字符串?我猜这种方式可以传递任何对象,日志消息是通过ToString确定的。但话又说回来,为什么'ususal'方法

Info(string message)

使用字符串而不是对象作为参数?

1 个答案:

答案 0 :(得分:3)

Log4Net提供IObjectRenderers,可以将对象转换为适合日志记录的字符串格式。

在传递字符串的情况下,它不需要做任何事情,在传递其他对象的情况下它使用IObjectRenderer

如果方法只采用字符串,那么就不会那么灵活。

虽然有Info(object message)方法,ILog接口似乎没有公开Info(字符串消息)方法,所以我不知道你从哪里得到它?