目前我有一些事件监听器设置来记录发生的所有插入/更新/删除操作。我只需浏览属性列表并构建一个字符串以插入审计表。
我真正想做的是获取NHibernate生成的原始SQL查询。就像NHProf所展示的一样。
我该怎么做?
答案 0 :(得分:1)
将<property name="show_sql">true</property>
放入配置文件中,使其将SQL输出到控制台。
如果你想要PrettyPrinted,你也可以放<property name="format_sql">true</property>
。
或者,您可以配置log4net(logger是“NHibernate.SQL”,IIRC)并将其发送到任何您想要的地方。