5
NHibernate的文檔的stateless session interface狀態,其中包括:NHibernate無狀態會話 - 數據混疊效果是什麼?
無狀態會話易受數據抗鋸齒效果,由於 沒有第一級緩存。
我找不到解釋。 「數據混疊效應」是什麼意思?
如果你可以舉例... that'd be great。
NHibernate的文檔的stateless session interface狀態,其中包括:NHibernate無狀態會話 - 數據混疊效果是什麼?
無狀態會話易受數據抗鋸齒效果,由於 沒有第一級緩存。
我找不到解釋。 「數據混疊效應」是什麼意思?
如果你可以舉例... that'd be great。
考慮下面的例子
table Orders
id | customer_id | quantity
---------------------------
1 | 1 | 5
2 | 1 | 20
var orders = statelessSession.Query<Oders>().ToList();
orders[0].Customer.HasDiscount = true;
Assert.False(orders[0].Customer == orders[1].Customer);
Assert.False(orders[1].Customer.HasDiscount);
// while
var orders = session.Query<Oders>().ToList();
orders[0].Customer.HasDiscount = true;
Assert.True(orders[1].Customer.HasDiscount);
所以使用無狀態會話的客戶是不一樣的,因此例如更新沒有見過,他們應該和的ReferenceEquals將返回false。您有兩個相同客戶的別名