1
的方案是一種(更復雜)以下的版本不顯示SQL:會議沖洗持續時未保存的實體
IList<T> ts = Session.QueryOvery<T>().List();
// modify data of multiple objects
ts[0].Foo = "foo0";
ts[1].Foo = "foo1";
using (ITransaction trx = Session.BeginTransaction())
{
// save only one object
Session.Save (ts[0]);
trx.Commit();
}
由於NH去,這也將被默認保存ts[1]
,以防止失效狀態(側注意:我們喜歡對我們的SQL進行控制,所以我們通過設置Session.FlushMode=FlushMode.Never
來關閉它)。
真正讓我煩惱的是,儘管Show_SQL
已激活,但不會顯示ts[1]
更新的sql,而這些更新肯定會通過刷新發送到數據庫。
有什麼方法可以讓這些顯示出來嗎?
這可能會感興趣:http://stackoverflow.com/a/9403516/1236044 – jbl 2013-03-15 09:52:00
感謝,jbl。這工作。你是否可以這樣善良地發佈這個答案,以便我可以標記它? – 2013-03-15 13:13:36