asp.net mvc - Structuremap 2.6.1 bootstrapper -
मैं StructureMap 2.6.1 का उपयोग कर रहा हूं
यह Bootstrapper.cs से कोड है:
ObjectFactory.Initialize (x = & gt; x.for & lt; IFoo & gt; ()। उपयोग करें & lt; Foo & gt; ());
जब मैं अनुप्रयोग चलाता हूं, तो मुझे निम्नलिखित अपवाद मिलता है:
प्लगिन के लिए कोई डिफ़ॉल्ट उदाहरण निर्धारित नहीं IFoo, संस्करण = 1.0.0.0, संस्कृति = तटस्थ, PublicKeyToken = null
जब मैं इस अप्रचलित कोड का उपयोग करता हूं तो मुझे एक अपवाद नहीं मिलता:
ForRequestedType & lt; IFoo & gt; () .डिफ़ॉल्ट.आईएसओफ़ कॉनट्रिक टाइप और लेफ्टिनेंट ; फू & gt; ();
क्या कोई मुझे ऑब्जेक्टफ़ैक्टर्स के प्रारंभकर्ता के लिए नवीनतम सिंटैक्स बता सकता है?
धन्यवाद।
हर बार जब आप आरंभ करते हैं, तो आप ऑब्जेक्टफ़ैक्टर को रीसेट कर रहे हैं। अर्थात। निम्न परिदृश्य में:
ObjectFactory.Initialize (x = & gt; x.for & lt; IFoo & gt; ()। & Lt; फ़ू & gt; ()) का उपयोग करें; ObjectFactory.Initialize (x = & gt; x.for & lt; IBaz & gt; ()। उपयोग करें & lt; बाज़ & gt; ());
आपने केवल IBaz
से बाज़
मैप किया है।
आपको इसके बजाय एक ApplicationRegistry का उपयोग करना चाहिए:
सार्वजनिक वर्ग ApplicationRegistry: रजिस्ट्री {सार्वजनिक ApplicationRegistry () (& lt; IFoo & gt; () के लिए & lt; Foo & gt; (); & Lt; IBaz & gt; () का प्रयोग करें। & Lt; बाज & gt; (); }}
और अपनी प्रारंभिक विधि में इसका उपयोग करें:
ObjectFactory.Initialize (x = & gt; x.AddRegistry (नया ApplicationRegistry ()));
Comments
Post a Comment