Ajouter un utilisateur de Nom et de prénom pour un ASP.NET Identité 2?
J'ai changé pour utiliser le nouveau ASP.NET Identité 2. Je suis en fait à l'aide de Microsoft ASP.NET l'Identité des Échantillons 2.0.0-beta2.
Quelqu'un peut me dire où et comment je peux modifier le code pour qu'il enregistre un nom et prénom ainsi que le détails de l'utilisateur. Serait-ce maintenant partie d'une réclamation et si oui, comment pourrais-je ajouter ?
Je suppose que j'aurais besoin d'ajouter ici ce qui est le registre de la méthode dans le compte de contrôleur:
if (ModelState.IsValid)
{
var user = new ApplicationUser { UserName = model.Email, Email = model.Email };
var result = await UserManager.CreateAsync(user, model.Password);
if (result.Succeeded)
{
var code = await UserManager.GenerateEmailConfirmationTokenAsync(user.Id);
var callbackUrl = Url.Action("ConfirmEmail", "Account", new { userId = user.Id, code = code }, protocol: Request.Url.Scheme);
await UserManager.SendEmailAsync(user.Id, "Confirm your account", "Please confirm your account by clicking this link: <a href=\"" + callbackUrl + "\">link</a>");
ViewBag.Link = callbackUrl;
return View("DisplayEmail");
}
AddErrors(result);
}
Aussi si j'ai fait ajouter le nom et le prénom alors où est-ce stockées dans la base de données? Dois-je créer une colonne supplémentaire dans un tableau de cette information?
OriginalL'auteur | 2014-04-22
Vous devez vous connecter pour publier un commentaire.
Vous devez l'ajouter à votre
ApplicationUser
classe donc, si vous utilisez de l'Identité des Échantillons, j'imagine que vous avez quelque chose comme ça dans votreIdentityModels.cs
après l'ajout des Noms et des prénoms, il devrait ressembler à ceci:
Ensuite, lorsque vous vous inscrivez, vous devez les ajouter à la liste maintenant qu'ils sont définis dans
ApplicationUser
classenom et prénom finira dans
AspNetUsers
table après les migrationsoui, ce que vous proposez n'a rien à voir avec les revendications... lire ceci.. il n'y a pas de raison de compliquer les choses
Comment obtenez-vous ce de le montrer dans l'identité comme une revendication? Ai-je besoin d'un autre processus pour l'ajouter aux revendications des tables pour que l'utilisateur?
J'ai essayé de suivre votre suggestion dans mon propre projet, mais
FirstName
etLastName
ne sont pas de finir dans ma base de données après les migrations et j'en suis500 Internal Server Error
lorsque vous essayez d'enregistrer un utilisateur avec un nom et prénom. j'ai fait un post à ce sujet ici. S'il vous plaît laissez-moi savoir si vous avez des idées de ce qui pourrait en être la cause. Merci. @Melina ou quelqu'un d'autre, n'hésitez pas à carillon. Je vous remercie pour votre temps.-1. @Melina je crois revendications est la bonne façon de stocker ces données. Il peut sembler étrange de ne pas normaliser les données (c'est pourquoi dima n'a sans doute pas comme l'idée), mais il semble revendications est justement dans ce but. Voir stackoverflow.com/questions/21645323/... et stackoverflow.com/questions/21362751/.... Ce dernier est pris par quelqu'un de la ASP.NET l'Identité de l'équipe de Microsoft.
OriginalL'auteur dima
Je me rends compte que ce post est vieux de quelques années, mais avec ASP.NET Core gagne du terrain j'ai atterri ici d'avoir une question similaire. La accepté de répondre vous recommande de mettre à jour vos données utilisateur modèle de saisir ces données. Je ne pense pas que c'est une mauvaise recommandation, mais d'après mes recherches revendications est la bonne façon de stocker ces données. Voir Qu'est-ce que les revendications de l'ASP .NET Identité et De l'utilisateur.L'identité.Nom nom complet mvc5. Ce dernier est pris par quelqu'un de la ASP.NET l'Identité de l'équipe de Microsoft.
Voici un simple exemple de code montrant comment vous ajoutez ces revendications à l'aide d'ASP.NET Identité:
OriginalL'auteur Justin Helgerson