NHIbernate içinde StatelessSession
ve Session
arasındaki fark nedir?NHibernate'de StatelessSession ve Oturum arasındaki fark nedir?
cevap
Vatansız oturumu alınır varlıkları izlemiyor. kod aşağıdaki normal ISession
için Örnek:
var session = sessionFactory.OpenSession()
using(var transaction = session.BeginTransaction()){
var user = session.Get<User>(1);
user.Name = "changed name";
transaction.Commit();
}
DB güncelleme sonuçlanacaktır. Bu izleme hafızayı tüketir ve izlenen varlıkların miktarı büyüdüğü için ISession
performansını zamanla düşürür.
IStatelessSession
ile aynı kod hiçbir şey yapmayacaktır. Çok sayıda veri yüklemeniz ve bazı toplu işlemleri gerçekleştirmeniz gerektiğinde, durum bilgisi olmayan oturumlar kullanılır. Daha fazla "ado.net" tarzında büyük veri kümeleriyle çalışmak için kullanılabilir.
Bu cevap 'StatelessSession' hakkında daha fazla ayrıntıya ihtiyaç duyar. Veritabanını bir 'StatelessSession' ile güncellediğiniz bir kod örneğine ne dersiniz? – Jess
[sessionfactory.openSession() ile sessionfactory.openStatelessSession() arasındaki farkın olası iki kopyası olabilir mi?] (Http://stackoverflow.com/questions/5496995/difference-between-sessionfactory-opensession-and-sessionfactory-openstatelesss) –
Cevapla [burada] (http://stackoverflow.com/questions/2679636/nhibernate-isession-vs-istatelesssession) – Reniuz