2010-05-06 7 views
5

मुझे आश्चर्य है कि एएसपीनेट एमवीसी के लिए क्या आसान आईओसी ढांचे हैं? इसमें अच्छा प्रलेखन है और उठना और जाना आसान है।एएसपीनेट एमवीसी के साथ उपयोग करने के लिए अच्छा आईओसी फ्रेमवर्क?

धन्यवाद

+1

किसी भी सभ्य आईओसी कंटेनर को एएसपी.नेट एमवीसी के साथ अच्छी तरह से काम करना चाहिए। वह चुनें जो आपकी संवेदनशीलताओं के अनुरूप सर्वोत्तम है। –

+2

http://stackoverflow.com/questions/21288/which-c-net- निर्भरता- इंजेक्शन-frameworks-are-worth-looking-into के संभावित डुप्लिकेट, http://stackoverflow.com/questions/148908/which- निर्भरता-इंजेक्शन-उपकरण-चाहिए-मैं-उपयोग, http: // stackoverflow।कॉम/प्रश्न/252008 9/ऑटोफैक-या-निन्जेक्ट-जो-चाहिए-मैं-जाना-के लिए, http://stackoverflow.com/questions/411660/enterprise-library-unity-vs-other-ioc-containers, http: //stackoverflow.com/questions/770039/examples-of-ioc-containers, आदि – Aaronaught

+1

ऐसा लगता है कि हारून सही है, हालांकि दूसरा प्रश्न एक वर्ष पुराना है। हो सकता है कि यह एक सीडब्ल्यू बनाये ताकि ढांचे के विकास के रूप में जानकारी को कम या ज्यादा रखा जा सके? – R0MANARMY

उत्तर

7

मैं Autofac का इस्तेमाल किया और किया है इसके साथ बहुत खुश हैं।

कॉन्फ़िगरेशन अधिकतर कोड में किया जाता है ताकि आप एक्सएमएल में प्रोग्रामिंग के विरोध में और सर्वश्रेष्ठ की उम्मीद के रूप में अपने मैपिंग के लिए संकलन समय जांच सकें। यह एक्सएमएल ओवरराइड का भी समर्थन करता है, हालांकि अगर आपको रन/तैनाती समय पर कॉन्फ़िगर करने के लिए कुछ छोड़ना है तो यह संभव है।

Contrib (यकीन नहीं क्या इसे कहते हैं?) भाग परियोजना के निर्माता MEF टीम पर एक वर्ष के लिए माइक्रोसॉफ्ट में काम किया तो वहाँ कुछ MEF integration भी है NHibernate, MOQ, आदि के लिए एकीकरण प्रदान करता है।

साइट का प्रलेखन अनुभाग बहुत अच्छा है (हालांकि यदि आपको वहां जो चाहिए वह नहीं मिलता है, तो शायद यह अस्तित्व में नहीं है ... अभी तक)। ऊपर की तरफ author is on SO इसलिए यदि आपके पास प्रश्न हैं और उचित रूप से टैग करते हैं तो आपको शायद गुणवत्ता के उत्तर मिल सकते हैं।


आप भी अपने आवेदन के विन्यास/तारों के आयोजन क्लीनर होने के लिए पर इन दो ब्लॉग पोस्ट में रुचि हो सकती।

  1. Using MEF and Castle Windsor to improve decoupling in your architecture
  2. NHibernate and WPF: The GuyWire - हालांकि यह WPF के संदर्भ में लिखा है, इसी अवधारणा एक webapp पर लागू होगा।
+0

+1 कैसल/विंडसर आधिकारिक साइट अजीब है। कंटेनर का उपयोग करने के कोई नमूने नहीं मिल सकते हैं। –

1

S#arp Architecture स्वीकार्य रूप से आईओसी से कहीं अधिक है। यह आईओसी के लिए Castle/Windsor का उपयोग करता है।

मैं इसे आपके एमवीसी अनुप्रयोग के ढांचे के लिए सर्वोत्तम प्रथाओं के एक बड़े सेट के रूप में अनुशंसा करता हूं।

+0

का उल्लेख करने के लिए – zerkms

1

मैंने Unity का उपयोग किया है और यह अच्छा है।

2

मैं विंडसर कैसल का उपयोग, अन्य लोगों का कहना है कि Structure Map वास्तव में अच्छा है, लेकिन मूल रूप से वे सब काम करते हैं

1

Danial Cazzulino Funq डि कंटेनर बनाने पर एक bunch (scrunch?) of screencasts है। फंक हल्का और तेज है लेकिन बड़े, अधिक स्थापित ढांचे के घंटियों और सीटी की कमी है।

मैं फ़ंक-व्युत्पन्न Munq का उपयोग करता हूं जो हल्के और तेज़ भी है और एमयूवी 3 परियोजनाओं में डीयू कंटेनर को Nuget के माध्यम से जोड़ने का एक आसान तरीका है। अब तक मुझे एक अलग ढांचे में जाने की जरूरत नहीं मिली है - मुनक बहुत पर्याप्त है।

PM> install-package Munq.MVC3 

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