मुझे अपने linq को sql datacontext को अपने सभी रिपोजिटरी ऑब्जेक्ट्स तक पहुंचने के लिए अपने व्यवसाय/डेटा परत में उपलब्ध होने की आवश्यकता है। हालांकि चूंकि यह एक वेब ऐप है, इसलिए मैं प्रति अनुरोध इसे बनाना और नष्ट करना चाहता हूं। मैं सोच रहा हूं कि क्या एक सिंगलटन क्लास है जो वर्तमान में HttpContext को डेटाकॉन्टेक्स्ट को आलसी बनाकर संलग्न कर सकती है। मेरा सवाल है: अनुरोध समाप्त होने पर डेटाकॉन्टेक्स्ट स्वचालित रूप से निपटान हो जाएगा? मैं जो सोच रहा हूं उसके लिए कोड नीचे है। क्या यह मेरा उद्देश्य पूरा करेगा: एक थ्रेड-सुरक्षित डेटाकॉन्टेक्स्ट उदाहरण है जो आलसी रूप से उपलब्ध है और अनुरोध समाप्त होने पर स्वचालित रूप से निपटाया जाता है? HTTP अनुरोध संदर्भ का उपयोग कर सामान स्टोर करने के लिए - - लेकिन नहीं है, डिस्पोजेबल वर्तमान HttpContext में संग्रहित वस्तुओं ऑटो जादुई जब अनुरोध समाप्त होता निपटारा नहीं किया जाएगाव्यापार स्तर में httpcontext में sql डेटाकॉन्टेक्स्ट से linq को जोड़ने के लिए
public class SingletonDC
{
public static NorthwindDataContext Default
{
get
{
NorthwindDataContext defaultInstance = (NorthwindDataContext)System.Web.HttpContext.Current.Items["datacontext"];
if (defaultInstance == null)
{
defaultInstance = new NorthwindDataContext();
System.Web.HttpContext.Current.Items.Add("datacontext", defaultInstance);
}
return defaultInstance;
}
}
}