このトピックに関する多くの質問と回答がありますが、私は自分の問題に対する答えを見つけることができませんでした。ここで説明するように、私はNHibernateのためにlog4netを構成した:http://nhibernate.hibernatingrhinos.com/19/how-to-configure-log4net-for-use-with-nhibernate流暢NHibernateとlog4net
私はトレースアペンダを使用するためにlog4netを構成している唯一の違い:
<appender name="trace" type="log4net.Appender.TraceAppender, log4net">
<layout type="log4net.Layout.PatternLayout,log4net">
<param name="ConversionPattern" value="%d %p %m%n" />
</layout>
</appender>
....
<logger name="NHibernate" additivity="false">
<level value="ALL"/>
<appender-ref ref="trace"/>
</logger>
<logger name="NHibernate.SQL" additivity="false">
<level value="ALL"/>
<appender-ref ref="trace"/>
</logger>
そしてプレストが、私はNHibernateのログを取得します。しかし、生成されたSQLクエリは表示されません。これは私が期待していたものです。セッションのオープンとクローズ、トランザクションのコミットなどをログに記録しますが、クエリには何もデータベースに送信されません。誰かが私が見落としていることを知っていますか?
私はNHibernate 3.1を使用するFluent NHibernate 1.2を使用しています。設定でShowSql()
を有効にしました。
流暢NHibernateの構成から 'SHOWSQL()'の呼び出しを削除してください。 –
@Pieter - ShowSql()を有効にすると、少なくともVS出力ウィンドウに表示されますか?それはFNH 1.0で私のために働く。生成されたSQLを見ることができますが、もちろん保存されません。 –
'ShowSql()'を有効にすると、クエリはVS出力ウィンドウに表示されません。 'ShowSql()'の削除はまだlog4netロギングには表示されません。 – Pieter