MongoDB
 sql >> डेटाबेस >  >> NoSQL >> MongoDB

'आइडेंटिटी कॉन्टेक्स्ट' नहीं मिला (क्या आप एक प्रयोग निर्देश या असेंबली संदर्भ खो रहे हैं)

मैंने व्यक्तिगत रूप से मोंगोडब पर अपने एएसपीनेट पहचान कार्यान्वयन के लिए एक ही उदाहरण का उपयोग किया है और जिस कारण से आप उस वर्ग को याद कर रहे हैं वह इस तथ्य के कारण है कि नमूना बहुत पुराना है और मोंगोडब के लिए पहचान विस्तार इस पर निर्भर करता है यहां और यह पहले से ही अद्यतन संस्करणों में प्रगति कर चुका है।

मैं यहां इसका पूरा विवरण नहीं दे सकता कि मैंने इसका उपयोग कैसे किया, लेकिन मैं निश्चित रूप से आपको अपने ओपन सोर्स प्रोजेक्ट यहां जहां मैंने आपके द्वारा उल्लिखित उदाहरण के रूप में सीखा है। मुझे आशा है कि यह मोंगोडब के साथ एएसपीनेट पहचान को लागू करने में आपकी समस्या का समाधान करेगा।

अपडेट करें

  1. यदि आप ठीक वही समाधान चाहते हैं जो अत्तिला हजड्रिक ने गिट रेपो में लिखा था, तो कृपया सुनिश्चित करें कि आपके पास बिल्कुल वही पैकेज संस्करण है जो AspNet.Identity.MongoDB परिभाषित है यहां . क्योंकि पुस्तकालय स्वयं अब स्वयं उन्नत हो गया है और मुझे लगता है कि आपने या तो सभी नगेट पैकेजों को अपडेट कर दिया है या अपनी आवश्यकता के अनुसार जीथब रेपो में लिखे पूरे समाधान को फिर से बनाया है। दोनों ही मामलों में, आप AspNet.Identity.MongoDB के एक संस्करण के साथ समाप्त हो सकते हैं जिसका आप उपयोग नहीं करना चाहते हैं। यह आपकी जरूरत के लिए सबसे छोटा और आसान समाधान होना चाहिए।

  2. अब मेरे जीथब रेपो से ऊपर वर्णित मेरे समाधान पर। मैंने अपना खुद का IAccountContext . इस्तेमाल किया और मैंने UserManager<User> . का इस्तेमाल किया मेरा आधार खाता प्रबंधक और UserStore<User> . के रूप में प्रबंधक के लिए मेरे अंतर्निहित स्टोर के रूप में। यहां User क्लास पहचान वर्ग है जिसका उपयोग मैं करता हूं जिसका उपयोग IdentityUser . से किया गया है ।

तकनीकी रूप से आप अपना खुद का संदर्भ आसानी से बना सकते हैं और आपको दिए गए उदाहरण पर पूरी तरह से भरोसा करने की ज़रूरत नहीं है।

मेरा नमूना AccountContext होगा:

public class AccountContext : IAccountContext
{        
    private readonly IDbContext dbContext;
    private readonly AccountManager accountManager;

    public AccountContext(
        IDbContext dbContext,         
        AccountManager accoutnManager)
    {
        this.dbContext = dbContext;
        this.accountManager = accoutnManager;        
    }
// Your own stuff here
}

यहां, AccountManager एक UserManager<T> है व्युत्पन्न और यह एक IUserStore<User> . लेता है इसके कंस्ट्रक्टर में। यह व्यावहारिक रूप से आपको इस बारे में अधिक स्वतंत्रता देता है कि आप अपनी पहचान परत को कैसे डिज़ाइन करना चाहते हैं। :)

उम्मीद है ये मदद करेगा।



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. MongoDB+Azure+Android:त्रुटि:com.mongodb.MongoException:मास्टर से बात नहीं करना और उपयोग किए गए पुनः प्रयास

  2. NodeJS मोंगो - नेवला - गतिशील संग्रह नाम

  3. यदि कोई परिणाम नहीं है तो MongoDB 0 की कुल वापसी संख्या है

  4. MongoDB 3.0 . में अपडेट होने के बाद Heroku ऐप क्रैश हो जाता है

  5. क्या है Mongoose त्रुटि ObjectId पर कास्ट करें मान XXX के लिए पथ _id पर विफल रहा?