Estoy tratando de usar el paquete Identity de .NET Core con múltiples clases que se extienden IdentityUser<Guid>
pero con una sola UserRole
clase.
Tengo varias clases que se extienden UserStore<T>
para cada tipo de usuario y una sola clase que se extiende RoleStore<UserRole>
.
El siguiente es mi 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>();
Mi DbContext
no se extiende IdentityDbContext
:
public sealed class EntityDbContext: DbContext { }
Estaba recibiendo múltiples errores, así que agregué lo siguiente DbContext
pero lo comenté:
public DbSet<IdentityUserClaim<Guid>> UserClaims { get; set; }
public DbSet<IdentityUserRole<Guid>> UserRoles { get; set; }
Recibo muchos errores diferentes:
Error de compilación en la instancia 'Dal.IdentityStores.InternalUserStore' para PluginType IUserStore - e Instancia 'RoleManager' para PluginType Microsoft.AspNetCore.Identity.RoleManager
1[Models.Entities.Users.UserRole] - and Instance 'Dal.IdentityStores.GenericUserRoleStore' for PluginType Microsoft.AspNetCore.Identity.IRoleStore
1 [Models.Entities.Users.UserRole] - e Instance 'Dal.IdentityStores.Reneric Store' PluginType Microsoft.AspNetCore.Identity.IRoleStore1[Models.Entities.Users.UserRole] - and Instance 'Dal.IdentityStores.ContractorUserStore' for PluginType Microsoft.AspNetCore.Identity.IUserStore
1 [Models.Entities.Contractors.Contractor] - e Instancia 'UserClaimsPrincipalFactory' para PluginType Microsoft.AspNetCore.Identity.IUserClaimsPrincipalFactory1[Models.Entities.Contractors.Contractor] - and Instance 'UserClaimsPrincipalFactory<Contractor, UserRole>' for PluginType Microsoft.AspNetCore.Identity.IUserClaimsPrincipalFactory
1 [Models.Entities.Contractor.Contraager.Contractor.Contractor.Instalador ' PluginType Microsoft.AspNetCore.Identity.UserManager1[Models.Entities.Homeowners.Homeowner] - and Instance 'UserClaimsPrincipalFactory<Homeowner>' for PluginType Microsoft.AspNetCore.Identity.IUserClaimsPrincipalFactory
1 [Models.Entities.Homeowners.Homeowner]
Este es el enlace a mi repositorio