【发布时间】:2012-06-13 13:25:23
【问题描述】:
我记得 log4net 与 NH 一起出现并且对于 OR-Mapper 是强制性的那些日子(真的是不久前)。现在它不再是强制性的,而是可选的。
我真的很想知道 NHibernate 是如何实现这一点的。如果有人能用几句话解释,那将不胜感激!
【问题讨论】:
-
是如何实现的?很确定您仍然需要 Log4Net,只是不必使用它登录。
-
是的,但你所说的“你不必这样做”正是我想要理解的。如果我针对 log4net 编译一个项目并稍后简单地删除 dll,我将不会获得可选的日志记录,而是一个损坏的软件......
-
...因此,“你仍然需要 Log4Net”。您可以通过在配置文件中将级别设置为“FATAL”或类似的级别来降低 Log4Net 的 nhibernate 日志量,但
log4net.dll是 NHibernate 的依赖项。 -
...但是我如何在没有 log4net 的应用程序中使用 NH?
-
他们通过反射加载它;不再直接引用 log4net.dll。请参阅下面的答案:)
标签: nhibernate log4net