16

मुझे यह त्रुटि संदेश मिल रहा है जो मेरी जेनेरिक रिपोजिटरी से प्राप्त करने का प्रयास करते समय। त्रुटि कहती है कि मुझे एक संदर्भ भी प्रदान करने की आवश्यकता है, लेकिन मुझे यकीन नहीं है कि कैसे?कोई तर्क नहीं दिया गया है जो जेनेरिक रिपोजिटरी <Incident> के आवश्यक औपचारिक पैरामीटर के संदर्भ से मेल खाता है। जेनरिक रिपोजिटरी (डीबीकॉन्टेक्स्ट)

//IncidentRepository 
public class IncidentRepository : GenericRepository<Incident> 

//Generic Repository (to inherit from) 
public class GenericRepository<TEntity> where TEntity : class 
{ 
internal db_SLee_FYPContext context; 
internal DbSet<TEntity> dbSet; 

public GenericRepository(db_SLee_FYPContext context) 
{ 
    this.context = context; 
    this.dbSet = context.Set<TEntity>(); 
} 

संपादित करें:

बस की जाँच करने के मैं इस समझा है?

public class IncidentRepository: GenericRepository<Incident> 
    { 

    public IncidentRepository(db_SLee_FYPContext context) 
    { 
     this.context = context; 
    } 

    //Then in my genric repository 
    public GenericRepository() 
    { 

    } 
+0

मैं सिर्फ अपने हादसा भंडार में एक डिफ़ॉल्ट निर्माता की आवश्यकता चाहिए लेकिन मैं अभी भी यह त्रुटि प्राप्त लेता है शामिल नहीं है किया जाएगा। – ASPCoder1450

उत्तर

28

त्रुटि आपको बताती है कि आप उचित आधार निर्माता नहीं हैं। व्युत्पन्न वर्ग में निर्माता ...

public IncidentRepository(db_SLee_FYPContext context) 
{ 
    this.context = context; 
} 

... वास्तव में यह कर रहा है:

public IncidentRepository(db_SLee_FYPContext context) 
    : base() 
{ 
    this.context = context; 
} 

लेकिन वहाँ कोई parameterless आधार निर्माता है।

आप मिलान आधार निर्माता को फोन करके इसे ठीक करना चाहिए:

public IncidentRepository(db_SLee_FYPContext context) 
    : base(context) 
{ } 

सी # 6 में आप इस संदेश को अगर कोई आधार प्रकार में केवल एक ही निर्माता है मिलता है, तो यह आपको सबसे अच्छा संभव संकेत जो तर्क देता है बेस कन्स्ट्रक्टर में गायब है। सी # 5 में संदेश बस

GenericRepository एक निर्माता कि 0 तर्क

+0

अच्छी तरह से समझाया। – goamn

+0

अच्छा जवाब; मैं त्रुटि संदेश (इस प्रश्न के शीर्षक में देखा गया) शब्द "कन्स्ट्रक्टर" का उपयोग करता हूं, क्योंकि समस्या (और फिक्स) के स्रोत के रूप में अधिक स्पष्ट होगा –

संबंधित मुद्दे