2009-05-22 12 views
5

वर्तमान में हम टैक्सी या तो उपयोग कर या हमारे अगले आवेदन के लिए MEF देख रहे हैं। मुझे कोडप्लेक्स पर कोई उदाहरण नहीं मिला कि कैसे भाई नियंत्रण संचार के लिए इवेंट ब्रोकिंग को संभाला जाता है, शायद मुझे याद आया। एमईएफ में इंटर-कंट्रोल संचार कैसे काम करता है?प्रबंधित तानाना फ्रेमवर्क (MEF) बनाम समग्र यूआई आवेदन ब्लॉक (सीएबी)

इसके अलावा, हम Infragistics जो सीएबी ढांचे के लिए अतिरिक्त घटकों प्रदान की गई है के प्रयोग पर योजना बना रहे हैं। इंफ्राजिस्टिक्स नियंत्रण एमईएफ में कितना अच्छा होगा?

कुल मिलाकर, MEF एक शालीनता से बड़े, 15,000 सख्ती से विकास, आवेदन के घंटे के लिए पीछा लायक है?

उत्तर

8

मैं गलत हो सकता है लेकिन मुझे नहीं लगता MEF किसी भी घटना दलाली है कि है। यह आईओसी कंटेनर के समान एक सामान्य संरचना इंजन है, लेकिन अधिक सामान्य प्लग-इन और एप्लिकेशन एक्स्टेंसिबिलिटी समाधान के लिए है। दूसरी ओर सीएबी और प्रिज्म यूआई ढांचे हैं जो यूआई घटकों से बने समग्र अनुप्रयोगों को अनुमति देते हैं। चूंकि यूआई घटकों को एक दूसरे के साथ संवाद करने और अन्य यूआई घटकों में गतिविधियों का जवाब देने की आवश्यकता होगी, अंतर्निहित ढांचे को यूआई घटकों के बीच घटना (पब/उप) के लिए एक तंत्र प्रदान करने की आवश्यकता है।

6

आप WPF और MVVM पैटर्न के साथ MEF का उपयोग कर रहे हैं, तो आपके भागों आमतौर पर ViewModel वर्गों और देखें वर्गों (जैसे DataTemplates, आदि) में निर्यात करें। आपका दृश्य ViewModel से जुड़ता है और आगे और आगे संवाद करने के लिए निर्भरता गुणों और आदेशों का उपयोग करता है। इसलिए, यदि भाग ए को भाग बी के साथ संवाद करने की आवश्यकता है, तो भाग ए पार्ट बी के व्यू मॉडेल के संदर्भ को आयात कर सकता है और वे आगे और आगे विधि कॉल कर सकते हैं। भाग एक भी, भाग बी के ईवेंट के लिए ईवेंट हैंडलर रजिस्टर कर सकते हैं आदि

6

MEF एक इवेंट तंत्र शामिल नहीं है, फिर भी आप MEF साथ प्रिज्म की घटना एग्रीगेटर का उपयोग कर सकते हैं। मैंने यहां एक पोस्ट किया था।

http://codebetter.com/blogs/glenn.block/archive/2009/02/23/event-aggregation-with-mef-with-and-without-eventaggregator.aspx

तरह से यह काम करता है आप मूल रूप से प्रिज्म के समग्र घटना कक्षाओं का निर्यात है।

HTH ग्लेन

2

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

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

  • कोई संबंधित समस्या नहीं^_^