web-dev-qa-db-fra.com

Modification du type IdentityUser dans ASP.NET Core 2.1

Je veux que ma User ait une Guid comme clé primaire, mais lorsque je crée mon propre type d'utilisateur, mon site Web lève une exception au démarrage. 

Quelqu'un sait comment changer le type d'IdentityUser? 

J'ai fait ça:

services.AddIdentity<MyUser, MyRole>()
    .AddEntityFrameworkStores<UBContext>()
    .AddDefaultUI()
    .AddDefaultTokenProviders();

Mais quand mon programme démarre, j'obtiens cette erreur: 

InvalidOperationException: Aucun service pour le type 'Microsoft.AspNetCore.Identity.UserManager`1 [Microsoft.AspNetCore.Identity.IdentityUser]' a été enregistré.

Est-ce que cela a quelque chose à voir avec le fait que l'interface utilisateur d'identité est maintenant dans une bibliothèque séparée et qu'un contrôleur dans cette bibliothèque attend un UserManager<IdentityUser>

Comment puis-je remplacer cela?

6
Zeus82

Ok, donc trouvé le problème. _LoginPartial.cshtml injecte 

@inject SignInManager<IdentityUser>
@inject UserManager<IdentityUser>

donc vous devez vous assurer qu'ils sont mis à jour pour

@inject SignInManager<MyUser>
@inject UserManager<MyUser>
13
Zeus82