के साथ मैं निनजेक्ट (और सामान्य रूप से डीआई) के लिए नया हूं।पोस्ट-प्रारंभिक ऑब्जेक्ट सृजन ninject
मुझे समझ में कैसे गिरी लोड मॉड्यूल, और कोड मैं अब तक लिखा है एक ही पंक्ति हो जाता है:
myKernel.Get<MyApp>()
जो सब कुछ मैं अपने मॉड्यूल में बाइंडिंग से की जरूरत है निर्माण करती है। यदि शुरुआती पोस्ट के बाद नए उदाहरणों की आवश्यकता है, तो इन्हें कारखानों द्वारा ख्याल रखा जाता है जिन्हें मैं प्रारंभ करने के लिए बाध्य करता हूं। अब तक, कारखानों को किसी भी निपुण निर्भरता से मुक्त किया गया है, मांग पर वस्तुओं को नए तरीके से जोड़ना।
अब मैं एक बिंदु पर पहुंच गया हूं कि मुझे प्रारंभिकता के बाद ऑब्जेक्ट सृजन के बारे में सोचने की ज़रूरत है और मेरा कारखाना पैटर्न अब इसे काट नहीं रहा है। यह (दूरस्थ) ग्राहकों के लिए एक पब/उप इंटरफ़ेस का समर्थन करना होगा। मेरे सर्वर से हर नए कनेक्शन के साथ, मैं एक निंजा मॉड्यूल में परिभाषित बाइंडिंग के सेट के अनुसार नया IClient
उदाहरण बनाना चाहता हूं। क्या इसका मतलब यह है कि मैं जिस कारखाने को प्रारंभ में पास करता हूं, उसका अपना कर्नेल (या मुख्य कर्नेल को रेफरी) होना चाहिए? इस में CommonServiceLocator कहां होगा। सीएसएल आवश्यक है?
इससे पहले कि मैं बहुत दूर मृत अंत तक यात्रा करता हूं, मैंने सोचा कि यह पूछना सबसे अच्छा होगा कि अन्य इस समस्या से कैसे संपर्क कर सकते हैं।
धन्यवाद रेमो। तो अगर मैं सही ढंग से समझता हूं, तो 2.3 में आपको फैक्ट्री इंटरफेस के ठोस कार्यान्वयन के बारे में चिंता करने की आवश्यकता नहीं है? 'ToFactory() 'कॉल का उपयोग करके बाध्य होने पर वास्तविक कार्यान्वयन किसी भी तरह से निकल जाता है? – spender
हां इसे गतिशील प्रॉक्सी –
नाइस का उपयोग करके स्वचालित रूप से कार्यान्वित किया गया। आपकी सहायता के लिए धन्यवाद. यह मेरे सिर में बहुत सारे प्रश्न साफ़ करता है। – spender