2014-04-07 22 views
17

Varlık Çerçeve 6 BeginTransaction yöntemi ile DBContext yapılan işlemleri desteklemediğinden için yeni bir yol tanıttı? Bir istisnada çağrılmadığında ne olur? TransactionScope'u kullanırken, imha edildiğinde ve Complete çağrılmadığında işlemi otomatik olarak geri alır. DbContextTransaction benzer şekilde davranır mı?DbContextTransaction Geri Alma

cevap

25

Hayır, Geri Çağırma'yı açıkça çağırmak gerekli değildir. Tx değişkeni, kullanım bloğu bittiğinde bertaraf edilir ve Commit() çağrılmamışsa işlem geri alınır. Ben olmak benim seçme açıklamada nolock ipucu kullanarak, veritabanı nesneleri üzerinde gerçekleştirilen kilitleri gözlemleyerek, hem de veri döndürülüyor zaman gözlemlemek için veritabanına karşı sorgulayarak, SQL Server Activity Monitor kullanarak bu test ettik

veritabanında kabul edilmeyen değişiklikleri görebiliyor.
E.g. select top 10 * from [tablename] (nolock) order by modifiedDate

+3

Testler yaptım ve aynı sonucu aldım ancak atma işleminin geri alınması ile ilgili hiçbir belge bulamadım. –