मैं संरचना मैप को कॉन्फ़िगर करने के लिए रजिस्ट्री डीएसएल उदाहरण का उपयोग कर रहा हूं। लेकिन ऐसा करने से मेरे सभी पंजीकृत प्रकार मेरे आवेदन की सभी परतों में उपलब्ध होते हैं जहां मैं नक्शा संरचना के लिए एक संदर्भ डालता हूं। मैं नहीं चाहता कि मेरी व्यावसायिक परत मेरी डेटा एक्सेस परत और इसके विपरीत कुछ भी जान सके। मैं अपनी प्रत्येक परत के लिए केवल विशिष्ट प्रकारों को पंजीकृत करने के लिए structmap कैसे प्राप्त करूं?संरचनामैप - कुछ परतों में कुछ प्रकारों को कैसे पंजीकृत करें
ObjectFactory.Initialize(x =>
{
x.AddRegistry<RegistryIOC>();
});
और यहाँ मेरी RegistryIOC वर्ग है:
public class RegistryIOC : SMRegistry
{
public RegistryIOC()
{
For<IProfileService>.Use<ProfileService>();
For<IProctorService>().Use<ProctorService>();
//Business Logic Objects
For<IQual>().Use<Qual>();
For<ITest>().Use<Test>();
For<IBoldface>().Use<Boldface>();
For<ITrainingPlan>().Use<TrainingPlan>();
For<IUnit>().Use<Unit>();
//Data Transfer Objects
For<IGenericDTO>().Use<GenericDTO>();
For<IProfileDTO>().Use<ProfileDTO>();
For<IQualDTO>().Use<QualDTO>();
For<IPermissionDTO>().Use<PermissionDTO>();
//Repository Objects
For<IProctorRepository>().Use<ProctorRepository>();
For<IQualsRepository>().Use<QualsRepository>();
For<ITestRepository>().Use<TestRepository>();
For<IUnitRepository>().Use<UnitRepository>();
For<IUserRepository>().Use<UserRepository>();
}
}
मदद के लिए धन्यवाद
यहाँ मेरी Global.asax फ़ाइल में कोड है।
आप किस तरह की परतों के बारे में बात कर रहे हैं? विभिन्न प्रक्रियाओं? विभिन्न मशीनें?यदि वे सभी एक ही प्रक्रिया में चल रहे हैं, तो संभवतया, इसके इंटरफ़ेस के बारे में, आप शायद अपनी व्यावसायिक परत * आपके डेटा परत के बारे में * थोड़ा * जानते हैं। यह अस्पष्ट है कि आप किस समस्या को हल करने की कोशिश कर रहे हैं। आपकी रजिस्ट्रीआईओसी कक्षा में क्या गलत है? –
हमारे पास एक सेवा परत, बीएलएल, और डीएएल है जो सभी अलग परियोजनाएं हैं। प्रत्येक परियोजना संदर्भ संरचना मैप। सेवा परत अन्य दो परतों के बारे में जानता है लेकिन बीएलएल और डीएएल एक-दूसरे के बारे में नहीं जानते हैं। मैं नहीं चाहता कि अन्य डेवलपर्स डीएएल के भीतर से बिजनेस ऑब्जेक्ट्स का उपयोग कर रहे हों और इसके विपरीत मैं नहीं चाहता कि डेवलपर्स बीएलएल के भीतर से रिपोजिटरी ऑब्जेक्ट्स का उपयोग कर सकें। सर्विस लेयर उस सब को व्यवस्थित करता है। तो सभी प्रकार के पंजीकरण का उपयोग करके इस तरह की सभी वस्तुओं को हमारी सभी परतों (परियोजनाओं) में उपलब्ध कराया जाता है। –
ठीक है, * संरचना रूट की तुलना में किसी अन्य परत से स्ट्रक्चर मैप का संदर्भ जोड़ें ... –