में HttpContext इंजेक्शन मेरी asp.net MVC अनुप्रयोग में मैं एक डि ढांचे के रूप में Ninject उपयोग कर रहा हूँ।Ninject 2
मेरे HttpAccountService मेरी नियंत्रकों द्वारा किया जाता है से और कुकीज़ करने के लिए जानकारी प्राप्त करने के। इसके लिए मुझे HttpAccountService में HttpContext.Current की आवश्यकता है।
kernel.Bind<IAccountService>()
.To<HttpAccountService>()
.InRequestScope()
.WithConstructorArgument("context", HttpContext.Current);
दुर्भाग्य से यह हमेशा एक ही संदर्भ में जो करता है कि बाद पहली अनुरोध खत्म इस संदर्भ पुराना हो जाता है के लिए बांधता है: इस के रूप में एक निर्भरता मैं इंजेक्शन यह इस तरह के रूप कंस्ट्रक्टर सोचा है।
कैसे मैं सही ढंग से मेरी HttpContext इंजेक्षन चाहिए?
वाक्य रचना संकलित करने के लिए प्रतीत नहीं होता है कि (आप संदर्भ उपहास करने के लिए कोशिश नहीं कर रहे हैं, तो मैं तुम्हें यह इनलाइन उपयोग करने पर विचार करेंगे मान)। यह x => HttpContext.Current के साथ संकलित करता है, लेकिन यह अपेक्षित परिणाम प्राप्त नहीं करता है। ऐसा इसलिए हो सकता है क्योंकि मुझे एक (स्थैतिक) कारखाने से मेरा निनजेक्लर मिलता है? –
आगे निरीक्षण पर ऐसा लगता है कि अब मुझे सही संदर्भ मिलता है, लेकिन मेरी समस्या कुछ और झूठ बोलनी चाहिए। रिकॉर्ड के लिए Thx –
: ऐसा इसलिए था क्योंकि एक RedirectToRoute कुकीज़ को अनुरोध करता है। –