के माध्यम से जेनेरिक प्रकारों को पंजीकृत करना मैं यूनिटी 2.0 के लिए कॉन्फ़िगरेशन फ़ाइल में एक सामान्य प्रकार को पंजीकृत करने का प्रयास कर रहा हूं लेकिन यह सही नहीं लगता है। http://msdn.microsoft.com/en-us/library/ff660933%28v=PandP.20%29.aspx#_Generic_Typesयूनिटी 2.0 एक्सएमएल
कोड इस तरह दिखता है:: मैं एमएस प्रलेखन यहाँ की चर्चा करते हुए दिया है
public interface IRepository<T> where T : class
{
...
}
public class GenericRepository<T> : IRepository<T> where T : class
{
...
}
public class BlogRepository : GenericRepository<BlogRepository>
{
...
}
एक्सएमएल config मैं इस समय है इस तरह loks:
<unity>
<!-- Aliases -->
<alias alias="BlogIRepository"
type="X.Services.Interfaces.IRepository[[X.Domain.Entities.Blog, X.Domain]], X.Services"/>
<alias alias="BlogRepository"
type="X.Repositories.BlogRepository, X.Repositories"/>
<!-- Type registration -->
<container name="development">
<!-- Common connection string value -->
<instance name="Conn" type="System.String" value="blahblahblah"/>
<register type="BlogIRepository" mapTo="BlogRepository">
<constructor>
<param name="connectionString" type="System.String" dependencyName="Conn"/>
</constructor>
</register>
</container>
</unity>
के अनुसार जेनेरिक प्रकारों को पंजीकृत करने के लिए जेनेरिक प्रकारों को पंजीकृत करने के लिए प्रलेखन, और यदि प्रकार एक सिस्टम प्रकार नहीं है तो आप अधिक स्क्वायर ब्रैकेट के अंदर पूरी तरह से योग्य प्रकार प्रदान करते हैं। मैंने जो किया है, मुझे लगता है। फिर भी - कोई काम नहीं।
संपादित: उदाहरण MSDN साइट से:
<register type="IDictionary[string, [MyApp.Interfaces.ILogger, MyApp]]"/>
त्रुटि उत्पन्न है:
प्रकार का नाम या उपनाम IRepository हल नहीं किया जा सकता है। कृपया अपनी कॉन्फ़िगरेशन फ़ाइल जांचें और इस प्रकार का नाम सत्यापित करें।
आपकी आखिरी टिप्पणी इस मुद्दे के समाधान थी। मैं उपनामों में शॉर्टकट वाक्यविन्यास का उपयोग करने की कोशिश कर रहा था। धन्यवाद। – krisg