2012-03-15 17 views
7

Başka koleksiyonlarda bulunduğu için yeniden yüklenecek bir koleksiyondaki bir nesneyi sildiğimde hata alıyorum. Mevcut oturumda sadece üzerinde çalıştığım koleksiyon var. Başkaları yok. Bence NHibernate, nesnenin silinmesine rağmen hala oturumda olduğunu söylüyor.NHibernate oturum nesnelerini görüntüleme

Geçerli oturumda bulunan veya NHibernate'in silmeye çalıştığım nesnenin ait olduğu koleksiyonu hangi nesnelerde görüntüleyebilirim?

+0

Tam istisnayı yüklemelisiniz. Toplamaya özgü eşlemenin yanı sıra, bir nesneyi silmeye çalışıyorsunuz. Ayrıca, bu nesneyi kaldırmaya/silmeye çalıştığınız kod da. –

+0

Nesneyi bazı koleksiyonlardan kaldırmayı mı unuttunuz? session.Delete yeterli değil – Firo

cevap

13

buldum:

var sessionContext = session.GetSessionImplementation().PersistenceContext; 
foreach (var entity in sessionContext.EntitiesByKey.Values) 
{ 

} 

bağlam oturumda tüm nesneler içeriyor.