समस्या तब शुरू हुई जब मैं एक MVC 4 आर सी वेब एपीआई परियोजना के साथ Ninject 3 उपयोग करने के लिए नीचे दिए गए समाधान का उपयोग करने की कोशिश कर रहा था:त्रुटि जब एक IActivationBlock निपटाने और आयात IKernel
http://www.peterprovost.org/blog/2012/06/19/adding-ninject-to-web-api/
यह समाधान IActivationBlock (का उपयोग करता है कॉल के दायरे को लागू करने के लिए IKernel से BeginBlock विधि के साथ बनाया गया)। एक नियमित रूप से Ninject परियोजना के साथ, ठीक से काम करने लगता है, लेकिन जब परियोजना विस्तार Ninject.Extensions.Interception.DynamicProxy का उपयोग करता है, निम्नलिखित अपवाद तब होता है जब सक्रियण ब्लॉक के निपटान विधि कहा जाता है:
लोड करने में त्रुटि Ninject घटक IAdviceRegistry
कर्नेल के घटक कंटेनर में ऐसा कोई घटक पंजीकृत नहीं हुआ है।
और, अगली बार जब एक नया ActivationBlock बनाई गई है और हल विधि कहा जाता है में, निम्नलिखित अपवाद तब होता है:
त्रुटि Ninject घटक ICache लोड हो रहा है
ऐसा कोई घटक है कर्नेल के घटक कंटेनर में पंजीकृत है।
ऐसा लगता है कि समस्या सीधे एमवीसी अपडेट से संबंधित नहीं है, लेकिन डायनेमिक प्रॉक्सी और आईएक्टिवेशनब्लॉक के बीच कुछ असंगतता है।
संपादित करें:
समस्या का स्रोत है जब प्रकारों में से एक निर्माता पर IKernel आवश्यकता है, और यह सीधे DynamicProxy से संबंधित नहीं है, लेकिन आप इस विधानसभा का संदर्भ जब पहली अपवाद केवल तब होता है।
तो, दूसरी त्रुटि (आईसीएच से संबंधित) हमेशा तब होती है जब आपके प्रकार को IKernel की आवश्यकता होती है।
मैं इसे भी देख रहा हूं –
कोई भी कभी भी कामकाज का पता लगाता है? – dtabuenc