Jeg brugte personligt det samme eksempel til min Asp.net Identity-implementering over Mongodb, og grunden til, at du mangler den klasse, er, at prøven er ret gammel, og den identitetsudvidelse for mongodb, den afhænger af, er her og den er allerede nået frem til opdaterede versioner.
Jeg kan ikke gå med den fulde beskrivelse her om, hvordan jeg brugte det, men jeg kan helt sikkert henvise dig til mit open source-projekt her hvor jeg har lært fra det eksempel, du nævnte. Jeg håber, det ville løse dit problem med at implementere Asp.net Identity med Mongodb.
Opdater
-
Hvis du vil have nøjagtig den samme løsning, som Attila Hajdrik skrev i git-repoen, skal du sørge for, at du har nøjagtig den samme pakkeversion, som AspNet.Identity.MongoDB definerede her . Fordi selve biblioteket nu selv er opgraderet, og jeg formoder, at du enten har opdateret alle nuget-pakkerne eller genskabt hele løsningen skrevet i github-repoen efter dit behov. I begge tilfælde kan du ende med en version af AspNet.Identity.MongoDB, du ikke ønsker at bruge. Denne burde være den korteste og nemmeste løsning til dit behov.
-
Nu på min løsning nævnt ovenfor fra min github repo. Jeg brugte min egen
IAccountContext
og jeg brugteUserManager
som min base AccountManager ogUserStore
som min underliggende butik for lederen. HerBruger
klasse er den identitetsklasse, som jeg bruger, og som er afledt afIdentityUser
.
Teknisk kan du nemt bygge din egen kontekst ud, og du behøver ikke at stole fuldt ud på det givne eksempel.
Mit eksempel på kontokontekst ville være:
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
}
Her, AccountManager
er en UserManager
derivat, og det kræver en IUserStore
Håber dette hjælper.