मुझे एक उपयोग कथन में एक IDbTransaction मिला है, लेकिन मैं अनिश्चित हूं कि यदि इसे एक उपयोग कथन में अपवाद के रूप में फेंक दिया जाए तो इसे वापस ले लिया जाएगा। मुझे पता है कि एक यूज़िंग स्टेटमेंट डिस्पोज़ () के आह्वान को लागू करेगा ... लेकिन क्या किसी को पता है कि क्या रोलबैक () के लिए भी यही सच है?
अद्यतन: इसके अलावा, क्या मुझे कमिट () को स्पष्ट रूप से कॉल करने की आवश्यकता है क्योंकि मेरे पास नीचे है या क्या यह भी उपयोग कथन द्वारा ध्यान रखा जाएगा?
मेरा कोड इस तरह दिखता है:
using Microsoft.Practices.EnterpriseLibrary.Data;
...
using(IDbConnection connection = DatabaseInstance.CreateConnection())
{
connection.Open();
using(IDbTransaction transaction = connection.BeginTransaction())
{
//Attempt to do stuff in the database
//potentially throw an exception
transaction.Commit();
}
}