इस परिदृश्य पर विचार करें:एकाधिक ग्राहकों के लिए सी # WinForm एप्लिकेशन को अनुकूलित करें
मेरे पास एक सी # विंडोज़ फॉर्म एप्लिकेशन है। यह एप्लिकेशन मेरे सभी ग्राहकों के लिए समान था। अब उनमें से एक को नए टेक्स्टबॉक्स और नए तर्क जोड़ने वाले फॉर्म को संशोधित करने की आवश्यकता है।
मैं स्पष्ट रूप से अपने आवेदन को डुप्लिकेट नहीं करना चाहता हूं, और तर्क को नियंत्रित करने के लिए ग्राहक-आईडी के साथ IF कथन डालने के लिए आसानी से स्पेगेटी-शैली कोड पर ड्राइव कर सकते हैं।
मुझे लगता है कि इस स्थिति में मैं प्रत्येक ग्राहक के लिए एक अलग डीएलएल परियोजना बना सकता हूं; अंदर मैं कस्टम रूपों को डिफ़ॉल्ट रूप (और तर्क वर्गों के लिए समान) के रूप में समान इंटरफ़ेस लागू कर सकता हूं और मैं उन डीएल को कॉन्फ़िगरेशन फ़ाइल के माध्यम से स्विच करने या सही ग्राहक डीएल के साथ प्रोजेक्ट बनाने का प्रयास कर सकता हूं (उदाहरण के लिए, उदाहरण के लिए विंडसर कैसल)।
क्या यह एक वैध पैटर्न है? एक अलग तरीके से मौजूद है?
अद्यतन
मैं सूची करने की कोशिश:
[MEF बनाम आईओसी/डीआई] (http://stackoverflow.com/questions/108116/mef-managed-extensibility-framework-vs-ioc-di) पर यह उत्तर देखें। मुझे लगता है कि एमईएफ या डी आपके लिए काम करेगा। निजी तौर पर, मैं ऑटोफैक का उपयोग करता हूं, लेकिन मैं पूर्वाग्रहित हूं। – bentayloruk