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é.

InformationsquelleAutor Xaxum | 2012-09-26