मैं 4 परियोजनाएं हैंनिर्भरता इंजेक्शन और परियोजना संरचना
- कोर
- StructureMap
इन्फ्रास्ट्रक्चर (सेवा):
- कोर
- बाहरी निर्भरता
कंसोल:
- कोर
- DependencyResolver
Requierements:
मैं केवल DependencyResolver में StructureMap उपयोग करने के लिए कोशिश कर रहा हूँ। इसके अलावा कंसोल एप्लिकेशन को इन्फ्रास्ट्रक्चर के बारे में कुछ भी नहीं पता होना चाहिए।
जब मैं अपने कंसोल एप्लिकेशन पर स्ट्रक्चर मैप का संदर्भ नहीं देना चाहता हूं तो मुझे एक सेवा लोकेटर बनाना होगा।
DependencyResolver में मैं एक Bootstrapper कि StructureMap रजिस्ट्री सामान (रजिस्टर)
बुला मेरी कंसोल आवेदन में के लिए जिम्मेदार है मैं एक उदाहरण प्राप्त करना चाहते है। इसके लिए मुझे स्ट्रक्चर मैप का संदर्भ देना होगा। एक और तरीका संरचना मैप्स समाधान विधियों के चारों ओर एक छोटे से रैपर लिखना होगा।
क्या स्ट्रक्चर मैप से कंसोल को डीकॉप्लिंग करने का कोई और बेहतर तरीका है?
थोड़ा अधिक इंजीनियर लगता है। आपका कोड कैसा दिखता है? यदि आपकी निर्भरता रिज़ॉल्यूशन पहले से ही संरचना मानचित्र को समाहित कर देता है तो आपको सेवा लोकेटर की आवश्यकता क्यों है? – SimonC
क्या आपने देखा है http://bootstrapper.codeplex.com/ –
नाम निर्भरता रिज़ॉल्वर इस बात का सम्मान करने के लिए सबसे अच्छा विकल्प नहीं है कि घटक किस के लिए उत्तरदायी है। फिलहाल इसकी एकमात्र जिम्मेदारी निर्भरताओं को पंजीकृत करना है। तो मेरा प्रश्न निर्भरता इंजेक्शन के हल करने वाले हिस्से के बारे में अधिक है। – Rookian