Quand l'Utilisateur.L'identité.Nom get set dans MVC4
Je suis en train d'essayer d'obtenir une propriété personnalisée de la UserProfile dans MVC4 qui utilise SimpleMembershipProvider. Ma table est comme suit:
public class UserProfile
{
[Key]
[DatabaseGeneratedAttribute(DatabaseGeneratedOption.Identity)]
public int UserId { get; set; }
public string UserName { get; set; }
//Added to round out requirements for site user profile
public string FirstName { get; set; }
public string LastName { get; set; }
public string Site { get; set; }
}
Lorsque j'essaie d'obtenir de la userprofile point je suis intéressé par, Prenom, dans une variable de session lors de la connexion,
public ActionResult Login(LoginModel model, string returnUrl)
{
if (ModelState.IsValid && WebSecurity.Login(model.UserName, model.Password, persistCookie: model.RememberMe))
{
var context = new UsersContext();
var curuser = context.UserProfiles.First(p => p.UserName == User.Identity.Name);
Session["FName"] = curuser.FirstName;
return RedirectToLocal(returnUrl);
}
//If we got this far, something failed, redisplay form
ModelState.AddModelError("", "The user name or password provided is incorrect.");
return View(model);
}
J'obtiens une erreur: la Séquence ne contient aucun des éléments renvoyant à mon var curuser ligne. Si je remplace l'Utilisateur.L'identité.Nom du modèle.Nom d'utilisateur, il fonctionne très bien. Je préfère utiliser de l'Utilisateur.L'identité.Nom puisque je ne peux utiliser ce partout où il le faut, ou alors j'ai pensé.
Vous devez vous connecter pour publier un commentaire.
C'est là que réside la réponse à votre question dans le titre:
Quand est HttpContext.De l'utilisateur.Identité de jeu?
Espère que cette aide