NHibernate和Castle调试过程中,如何输出SQL的问题

时间:2022-04-26 00:48:25

         首先,我在此需要强调的是,不管是Castle或者NHibernate输出SQL,都应该是属于NHibernate的技术,Castle的本身也是基于NHibernate开发的ORM框架,NHibernate的一些特征,Castle都具备

Castle ActiveRecord框架是一个基于.NET的ORM框架,它实现了ActiveRecord设计模式。它本身就是基于NHibernate,只是封 装了NHibernate的大部分烦杂细节,对于需要持久化的类,只需继承自ActiveRecordBase类,并对类中的property赋予正确的 Attribute,而无需编写烦杂的mapping file。对于大型系统复杂的数据库逻辑,Castle project建议仍然使用NHibernate作为ORM,而对于数据库数据大批量的迁移、备份等操作,Castle project建议不采用任何ORM机制,而直接使用ADO.NET

          不废话了,直接上配置

找到Log4Net.Config的文件配置

1.在log4net 标签下增加如下的增加如下:
< appender type =" log4net.Appender.DebugAppender " name =" DebugAppender" >
< layout type =" log4net.Layout.PatternLayout ">
< param name =" ConversionPattern " value =" %d [%t] %-5p %c [%x] - %m%n" />
</ layout >
</ appender >
2.增加如下:
< logger name =" NHibernate.SQL ">
< level value =" DEBUG "/>
< appender-ref ref =" DebugAppender "/>
< appender-ref ref =" TraceAppender "/>
</ logger >