मेरी MVC 3 आवेदन में मैं Ninject उपयोग कर रहा हूँ और मेरी निर्भरता से एक इकाई की रूपरेखा पर है:निनजे + एएसपीनेट एमवीसी + इकाई फ्रेमवर्क - मेरा संदर्भ कब निपटाया जाता है?
interface IFooRepository
{
Foo GetFoo(int id);
}
public EFFooRepository : IFooRepository
{
private FooDbContext context;
public EFFooRepository(FooDbContext context)
{
this.context = context;
}
}
मैं इतना Ninject में की तरह एक बाध्यकारी की स्थापना की है, इसलिए यदि मैं एक से अधिक निर्भरता है और वे दोनों की जरूरत एक डेटा संदर्भ वे एक ही संदर्भ साझा करना समाप्त करते हैं:
Bind<FooDbContext>().ToSelf().InRequestScope();
मुझे पता नहीं है कि मेरे संदर्भ का निपटारा कब किया जाएगा। चूंकि मैं इसे तत्काल नहीं करता हूं, क्या कभी इसे निपटान किया जाएगा या जब यह कचरा इकट्ठा किया जाता है तो इसका निपटान किया जाएगा? निनजेक्ट को इसके साथ किए जाने पर कुछ भी निपटाने के बारे में पता है?
यही वही था जो मैं उम्मीद कर रहा था। मेरा मानना है कि डीबीकॉन्टेक्स्ट आईडीस्पोज़ेबल लागू करता है। वास्तव में अगर यह नहीं हुआ तो मैं चौंक गया। धन्यवाद! – Dismissile
@ डिस्मिसाइल, हां, डीबीकॉन्टेक्स्ट आईडीस्पोज़ेबल लागू करता है। –
ओह बहुत अच्छा है। उदाहरण के लिए धन्यवाद। – Dismissile