8

मैं एक एएसपी.नेट एमवीसी प्रोजेक्ट पर काम कर रहा हूं जहां हमने डाटाकास के लिए फ्लुएंट एनहिबर्नेट का उपयोग करने का निर्णय लिया है। ढीले युग्मन को सक्षम करने के लिए हम एक आईओसी/डी पैटर्न के लिए जाते हैं। मेरे प्रश्न आईओसी उपकरण के लिए जाने के लिए क्या है। मैंने विंडसर, निंजा, वसंत, संरचना मैप और एकता के बीच अंतर खोजने की कोशिश की है, लेकिन प्रत्येक को जो लाभ प्रदान करना है, उसे देखना मुश्किल है। आपका अनुभव क्या है?एएसपी.नेट एमवीसी + धाराप्रवाह nNibernate, आईओसी उपकरण क्या है?

http://www.hanselman.com/blog/ListOfNETDependencyInjectionContainersIOC.aspx

+3

एफवाईआई, अगली बार जब आप इस तरह के एक प्रश्न पूछते हैं, तो वाक्यांश इसे और अधिक पसंद करते हैं: "मुझे आईएससी में एएसपी.नेट एमवीसी + धाराप्रवाह एनएचबर्ननेट के साथ अच्छी तरह से खेलने के लिए क्या देखना चाहिए?" आपको बेहतर उत्तर मिलेंगे। –

उत्तर

6

मैं StructureMap उपयोग करें और यह बहुत उपयोग करने में आसान है:

7

स्कॉट Hanselman लोकप्रिय नेट IoCs का एक बहुत पर एक बहुत अच्छी तुलना/विपरीत लेख है। व्यक्तिगत रूप से मैं xml का उपयोग करके कॉन्फ़िगर करना पसंद नहीं करता और स्ट्रक्चर मैप कोड का उपयोग करके कॉन्फ़िगर करने के लिए एक हवा बनाता है। यदि आपको कार्यान्वयन स्विच करने की आवश्यकता है तो अलग प्रोफ़ाइल को स्विच करना भी बहुत आसान है।

4

मैं विंडसर का उपयोग करता हूं और मेरे पास शिकायत करने के लिए कुछ भी नहीं है। उपयोग करने में आसान, जब आपको इसकी आवश्यकता होती है तो एक्स्टेंसिबल और यदि आप अटक जाते हैं तो बहुत सारी जानकारी। लेकिन मुझे नहीं लगता कि यह महत्वपूर्ण है कि आप कौन सा कंटेनर चुनते हैं। उनमें से सभी का उल्लेख सामान्य विशेषताएं हैं और mvccontrib प्रोजेक्ट में एमवीसी के लिए अनुकूलक भी हैं। यदि आप कंटेनर को अपनी कक्षा में लपेटते हैं, तो किसी अन्य कंटेनर पर स्विच मुश्किल नहीं होना चाहिए, जो कि वैसे भी एक अच्छा अभ्यास है।

1

मैं विंडसर का उपयोग कर रहा हूं और इसे प्यार करता हूं। NHibernate का उपयोग करने के लिए एक अंतर्निहित सुविधा है जो लॉगिंग और कनेक्शन इत्यादि की सरल विन्यास के लिए अनुमति देता है।

यदि आप फ्लुएंट निबर्ननेट का उपयोग करने की योजना बना रहे हैं तो आपको विंडसर सुविधा को बताना होगा जिसमें असेंबली कॉन्फ़िगरेशनबिल्डर है। http://mikehadlow.blogspot.com/2009/01/integrating-fluent-nhibernate-and.html

+0

मैं विंडसर और तेज वास्तुकला के लिए गया था। यह सही काम करता है। मैंने स्ट्रक्चर मैप के साथ कुछ परीक्षण भी किया, और इसमें कोई बड़ा अंतर नहीं है। Microsoft सर्वोत्तम प्रथाओं का उपयोग करते समय ServiceLocator बाद में स्विच करना आसान है। – bondehagen

0

मैं Munq जो हल्के और तेज है और Nuget के माध्यम से MVC3 परियोजनाओं के लिए एक डि कंटेनर को जोड़ने के लिए एक आसान तरीका है का उपयोग करें: माइक Hadlow विंडसर और NHibernate पर इस के साथ साथ कई अन्य लोगों पर एक बड़ा लिखने अप है। अब तक मुझे एक अलग ढांचे में जाने की जरूरत नहीं मिली है - मुनक बहुत पर्याप्त है।

PM> install-package Munq.MVC3 

इस परियोजना के लिए App_Start\MunqMvc3Startup.cs कहते हैं, और यह वह जगह है जहाँ निर्भरता पंजीकृत किया जाना चाहिए।

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