Ich versuche, das Identitätspaket von .NET Core mit mehreren Klassen zu verwenden, die sich erweitern, IdentityUser<Guid>aber mit einer einzelnen UserRoleKlasse.
Ich habe mehrere Klassen, die UserStore<T>für jeden Benutzertyp erweitert werden, und eine einzelne Klasse, die erweitert wird RoleStore<UserRole>.
Das Folgende ist mein startup.cs :
services.AddIdentity<InternalUser, UserRole>(IdentityOptions)
.AddDefaultTokenProviders()
.AddUserStore<InternalUserStore>()
.AddRoleStore<GenericUserRoleStore>();
services.AddIdentityCore<Contractor>(IdentityOptions)
.AddRoles<UserRole>()
.AddDefaultTokenProviders()
.AddUserStore<ContractorUserStore>()
.AddRoleStore<GenericUserRoleStore>();
services.AddIdentityCore<Homeowner>(IdentityOptions)
.AddRoles<UserRole>()
.AddDefaultTokenProviders()
.AddUserStore<HomeownerUserStore>()
.AddRoleStore<GenericUserRoleStore>();
Mein DbContexterstreckt sich nichtIdentityDbContext :
public sealed class EntityDbContext: DbContext { }
Ich habe mehrere Fehler erhalten, daher habe ich Folgendes hinzugefügt DbContext aber ich habe es auskommentiert:
public DbSet<IdentityUserClaim<Guid>> UserClaims { get; set; }
public DbSet<IdentityUserRole<Guid>> UserRoles { get; set; }
Ich bekomme viele verschiedene Fehler:
Build-Fehler für Instanz 'Dal.IdentityStores.InternalUserStore' für PluginType IUserStore - und Instanz 'RoleManager' für PluginType Microsoft.AspNetCore.Identity.RoleManager
1[Models.Entities.Users.UserRole] - and Instance 'Dal.IdentityStores.GenericUserRoleStore' for PluginType Microsoft.AspNetCore.Identity.IRoleStore1 [Models.Entities.Users.UserRole] - und Instanz 'Dal.IdentityStores PluginType Microsoft.AspNetCore.Identity.IRoleStore1[Models.Entities.Users.UserRole] - and Instance 'Dal.IdentityStores.ContractorUserStore' for PluginType Microsoft.AspNetCore.Identity.IUserStore1 [Models.Entities.Contractors.Contractor] - und Instanz 'UserClaimsPrincipalFactory' für PluginType Microsoft.AspNetCore.Identity.IUserClaimsPrincipalFactory1[Models.Entities.Contractors.Contractor] - and Instance 'UserClaimsPrincipalFactory<Contractor, UserRole>' for PluginType Microsoft.AspNetCore.Identity.IUserClaimsPrincipalFactory1 [Models.Entities.Cont PluginType Microsoft.AspNetCore.Identity.UserManager1[Models.Entities.Homeowners.Homeowner] - and Instance 'UserClaimsPrincipalFactory<Homeowner>' for PluginType Microsoft.AspNetCore.Identity.IUserClaimsPrincipalFactory1 [Models.Entities.Homeowners.Homeowner]
Dies ist der Link zu meinem Repo