मैं सिर्फ यह जानना चाहता हूं कि returnकिसी usingब्लॉक के अंदर कॉल करना सुरक्षित / अच्छा तरीका है ।
पूर्व के लिए।
using(var scope = new TransactionScope())
{
// my core logic
return true; // if condition met else
return false;
scope.Complete();
}
हम जानते हैं कि सबसे अंतिम कर्ली ब्रेस dispose()को कहा जाता है। लेकिन उपरोक्त मामले में क्या होगा, क्योंकि returnदिए गए दायरे से बाहर नियंत्रण कूदता है (AFAIK) ...
- क्या मेरा
scope.Complete()कहा जाता है? - और इसलिए गुंजाइश की
dispose()विधि के लिए।
using{}गुंजाइश खत्म हो जाती है, तो संबंधित वस्तुओं का निस्तारण हो जाता है,returnइस दायरे को "तोड़" देगा - इसलिए वस्तुएं उम्मीद के अनुसार