2011-03-21 14 views
7
using (var context = new FirstEntities()) 
{ 
    using (var context1 = new SecondEntities()) 
    { 
    } 
} 

यह काम करता है लेकिन किसी कारण से "सही महसूस नहीं होता" ... क्या किसी को किसी भी वैध कारण को पता है कि इकाई ढांचे के साथ बयान का उपयोग न किए गए नेस्टेड का उपयोग न करें?ईएफ इकाइयों के संदर्भों का उपयोग करके नेस्टेड का उपयोग न करने का कोई कारण नहीं है?

संपादित करें: मेरा प्रश्न पंक्तियों के साथ अधिक है अगर वहाँ एक परिदृश्य में जहाँ घोंसले के इस प्रकार एक अपवाद या बल्कि अगर यह वास्तु दृष्टिकोण से सलाह दी जाती है की तुलना में एक डेटाबेस त्रुटि का कारण बन सकता है ...

उत्तर

11

घोंसले तक डेटा संदर्भ आप एक बार में दो डेटाबेस कनेक्शन का उपयोग करेंगे। एक संदर्भ से आपको आवश्यक डेटा प्राप्त करना प्राथमिकता है, इसे बंद करें और अगला खोलें, और उस संदर्भ से प्राप्त डेटा प्राप्त करें।

इसका मतलब थोड़ा और अधिक काम हो सकता है क्योंकि आपको अपने कोड को बेहतर तरीके से योजना बनाना है, लेकिन इसका मतलब यह भी है कि एप्लिकेशन बेहतर स्केल करता है।

+0

धन्यवाद, यह एक वैध वास्तुशिल्प कारण है जो इसे नहीं करने के लिए है, लेकिन यदि कोई ऐसा परिदृश्य है जहां इस प्रकार के घोंसले को अपवाद या डेटाबेस त्रुटि हो सकती है ... –

+0

हमम ... चलो उसके बारे में सोचना। क्या कोई ऐसा एप्लिकेशन जो डेटाबेस कनेक्टिविटी समस्याओं का समाधान नहीं कर सकता है? हमम ... ;-) –

+2

@kzen: नहीं, यह सामान्य रूप से त्रुटियों का कारण नहीं बनता है। आप निश्चित रूप से एक परिदृश्य बना सकते हैं जहां दोनों संस्थाएं एक ही टेबल का उपयोग करती हैं, और एक में परिवर्तन करने से त्रुटियों या दूसरे के लिए असंगत परिणाम हो सकते हैं। – Guffa

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