9

मैं अपनी कक्षा पुस्तकालय में DI जोड़ना चाहता था जो एमवीसी 4 वेब अनुप्रयोग का हिस्सा है। तो मेरे पास एकता, structmap, ninject का विकल्प था। मैंने एकता चुना क्योंकि यह Asp.Net नमूना में उल्लेख किया गया था।एमवीसी 4 अनुप्रयोग के लिए एकता या unity.mvc4

जब मैंने एकता के लिए नुजेट की खोज की तो मुझे लगता है कि एकता की कई भिन्नताएं हैं। मेरी लाइब्रेरी, यूनिटी या यूनिटी के लिए कौन सा उपयुक्त है। एमवीसी 4

उत्तर

7

आप यूनिटी.एमवीसी 4 पैकेज जोड़ना चाहते हैं, क्योंकि यह यूनिटी और एएसपी.नेट एमवीसी 4 के बीच एकीकरण प्रदान करता है। हालांकि, यूनिटी.एमवीसी 4 एकता पर निर्भर करता है , इसलिए जोड़कर आप दोनों पैकेज प्राप्त करेंगे।

तुम भी एकीकरण कॉन्फ़िगर करने के लिए कुछ इस तरह की आवश्यकता होगी:

var container = new UnityContainer(); 
// configure container here (RegisterType, etc.), then make sure MVC 4 uses Unity... 
DependencyResolver.SetResolver(new Unity.Mvc4.UnityDependencyResolver(container)); 
3

आप ASP.NET MVC के लिए एकता Bootstrapper स्थापित करने के लिए NuGet उपयोग करना चाहिए। यह माइक्रोसॉफ्ट द्वारा बनाया गया है और नवीनतम यूनिटी 3.0 का उपयोग करता है। पृष्ठ 45 में Developer's Guide to Microsoft Unity में भी इसका उल्लेख किया गया है।

मैंने आज यूनिटी.एमवीसी 4 की कोशिश की। वर्तमान 1.2 संस्करण अभी भी एकता 2 का उपयोग करता है। शायद अगला संस्करण नई यूनिटी 3.0 का उपयोग करेगा। मुझे लगता है कि दोनों ठीक होना चाहिए।

+0

धन्यवाद, ठोस दिखता है। – Ron

0

वहाँ के बजाय) unity.mvc4 साथ एक्सएमएल विन्यास का उपयोग LoadConfiguration (जैसे

container.RegisterType<itestservice, testservice="">(); 

कोड कुछ का उपयोग करने और web.config को विन्यास जोड़ने के लिए एक तरीका है?

धन्यवाद

संबंधित मुद्दे