मैंने हाल ही में को Ninject.Web.Mvc
एक्सटेंशन के साथ आजमाया है, और मैंने कुछ अनोखा देखा है, जबकि ब्रेकिंग नहीं कर रहा है।निंजा और OnePerRequestModule
NinjectHttpApplication
सार कक्षा में इस प्रकार है, वहाँ एक निर्माता परिभाषित किया गया है ..
/// <summary>
/// Initializes a new instance of the <see cref="NinjectHttpApplication"/> class.
/// </summary>
protected NinjectHttpApplication()
{
this.onePerRequestModule = new OnePerRequestModule();
this.onePerRequestModule.Init(this);
}
मैं एक डिबगर ब्रेकप्वाइंट यहाँ रखा है, और यह कई बार कहा जाता हो जाता है। मुझे इस पर कोई वास्तविक दस्तावेज नहीं मिल रहा है। कार्यान्वयन कोड में, यह रेखा है जो मेरी आंख को पकड़ती है।
if (kernel.Settings.Get("ReleaseScopeAtRequestEnd", true))
{
OnePerRequestModule.StartManaging(kernel);
}
मेरे सवालों का इस प्रकार हैं ...
OnePerRequestModule
- क्यों इस निर्माता कहा जाता है की जा रही है कई बार क्या है?
- इस
StartManaging
विधि का उद्देश्य क्या है, यदि निर्माता को कई बार कहा जाता है?
संबंधित: http://stackoverflow.com/questions/15778324/do-i-need-to-register-ninject-oneperrequestmodule-with-ninject-web-mvc-3-0/15786866# –