मैंने व्यक्तिगत रूप से मोंगोडब पर अपने एएसपीनेट पहचान कार्यान्वयन के लिए एक ही उदाहरण का उपयोग किया है और जिस कारण से आप उस वर्ग को याद कर रहे हैं वह इस तथ्य के कारण है कि नमूना बहुत पुराना है और मोंगोडब के लिए पहचान विस्तार इस पर निर्भर करता है यहां और यह पहले से ही अद्यतन संस्करणों में प्रगति कर चुका है।
मैं यहां इसका पूरा विवरण नहीं दे सकता कि मैंने इसका उपयोग कैसे किया, लेकिन मैं निश्चित रूप से आपको अपने ओपन सोर्स प्रोजेक्ट यहां जहां मैंने आपके द्वारा उल्लिखित उदाहरण के रूप में सीखा है। मुझे आशा है कि यह मोंगोडब के साथ एएसपीनेट पहचान को लागू करने में आपकी समस्या का समाधान करेगा।
अपडेट करें
-
यदि आप ठीक वही समाधान चाहते हैं जो अत्तिला हजड्रिक ने गिट रेपो में लिखा था, तो कृपया सुनिश्चित करें कि आपके पास बिल्कुल वही पैकेज संस्करण है जो AspNet.Identity.MongoDB परिभाषित है यहां . क्योंकि पुस्तकालय स्वयं अब स्वयं उन्नत हो गया है और मुझे लगता है कि आपने या तो सभी नगेट पैकेजों को अपडेट कर दिया है या अपनी आवश्यकता के अनुसार जीथब रेपो में लिखे पूरे समाधान को फिर से बनाया है। दोनों ही मामलों में, आप AspNet.Identity.MongoDB के एक संस्करण के साथ समाप्त हो सकते हैं जिसका आप उपयोग नहीं करना चाहते हैं। यह आपकी जरूरत के लिए सबसे छोटा और आसान समाधान होना चाहिए।
-
अब मेरे जीथब रेपो से ऊपर वर्णित मेरे समाधान पर। मैंने अपना खुद का
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>
. लेता है इसके कंस्ट्रक्टर में। यह व्यावहारिक रूप से आपको इस बारे में अधिक स्वतंत्रता देता है कि आप अपनी पहचान परत को कैसे डिज़ाइन करना चाहते हैं। :)पी>
उम्मीद है ये मदद करेगा।