2014-04-07 3 views
17

इकाई की रूपरेखा 6 एक नया तरीका BeginTransaction विधि के साथ DbContext में लेनदेन का समर्थन करने के लिए शुरू? क्या होता है अगर इसे अपवाद पर नहीं कहा जाता है? मुझे पता है कि लेनदेनस्कोप का उपयोग करते समय यह लेनदेन को स्वचालित रूप से वापस ले जाएगा जब इसे निपटान किया जाता है और पूर्ण नहीं कहा जाता है। क्या डीबीकॉन्टेक्स्ट ट्रांज़ेक्शन समान व्यवहार करता है?DbContextTransaction रोलबैक

उत्तर

25

रोलबैक को स्पष्ट रूप से कॉल करना आवश्यक नहीं है। जब उपयोग ब्लॉक समाप्त होता है तो टीएक्स वैरिएबल का निपटारा किया जाएगा, और यदि Commit() को कॉल नहीं किया गया है तो लेनदेन को वापस ले जाया जाएगा।

मैंने डेटाबेस ऑब्जेक्ट्स पर रखे ताले को देखकर SQL सर्वर गतिविधि मॉनीटर का उपयोग करके इसका परीक्षण किया है, साथ ही डेटा के पीछे पूछताछ करने के लिए डाटाबेस के खिलाफ पूछताछ की है कि मेरे चयन कथन में नोलॉक संकेत का उपयोग करके डेटाबेस में असामान्य परिवर्तन देखने में सक्षम।
उदा। select top 10 * from [tablename] (nolock) order by modifiedDate

+3

मैंने परीक्षण किया और एक ही परिणाम मिला लेकिन मुझे निपटान पर लेनदेन को रोलबैक करने से संबंधित कोई दस्तावेज नहीं मिला। –

संबंधित मुद्दे