sql >> Databasteknik >  >> NoSQL >> MongoDB

"IdentityContext" kunde inte hittas (saknar du ett användningsdirektiv eller en monteringsreferens)

Jag använde personligen samma exempel för min Asp.net Identity-implementering över Mongodb och anledningen till att du saknar den klassen är på grund av att provet är ganska gammalt och identitetstillägget för mongodb det beror på är här och den har redan gått vidare till uppdaterade versioner.

Jag kan inte gå med den fullständiga beskrivningen här om hur jag använde det, men jag kan verkligen hänvisa dig till mitt open source-projekt här där jag har lärt mig från exemplet som du nämnde. Jag hoppas att det skulle lösa ditt problem med att implementera Asp.net Identity med Mongodb.

Uppdatera

  1. Om du vill ha exakt samma lösning som Attila Hajdrik skrev i git repo, se till att du har exakt samma paketversion som AspNet.Identity.MongoDB definierade här . Eftersom själva biblioteket nu uppgraderas själv och jag antar att du antingen uppdaterade alla nuget-paket eller återskapade hela lösningen skriven i github-repo enligt ditt behov. I båda fallen kan du få en version av AspNet.Identity.MongoDB som du inte vill använda. Detta borde vara den kortaste och enklaste lösningen för ditt behov.

  2. Nu på min lösning som nämns ovan från min github-repo. Jag använde min egen IAccountContext och jag använde UserManager som min baskontohanterare och UserStore som min underliggande butik för chefen. Här Användare klass är Identity-klassen som jag använder och som härleds från IdentityUser .

Tekniskt sett kan du enkelt bygga ditt eget sammanhang och du behöver verkligen inte lita på det givna exemplet fullt ut.

Mitt exempel på AccountContext skulle vara:

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
}

Här, AccountManager är en UserManager derivat och det tar en IUserStore i sin konstruktör. Det ger dig praktiskt taget mer frihet i hur du vill designa ditt identitetslager. :)

Hoppas det här hjälper.



  1. MongoDB beräknar poäng från befintliga fält och lägger in det i ett nytt fält i samma samling

  2. Ringa funktion inuti mongodbs aggregat?

  3. Elasticsearch timeout vid varje sökförfrågan tills omstart

  4. Varför tar MongoDB så mycket plats?