MVC 4 SimpleMembership - Warum WebSecurity.CurrentUserId -1 nach der Anmeldung?

Ich versuche, bei der Anmeldung ein Cookie zu setzen und habe Probleme, die aktuelle Benutzer-ID nach der Anmeldung abzurufen. Im Folgenden ist intUserId -1 und WebSecurity.IsAuthenticated ist false. Ist dies nicht der richtige Ort, um diesen Code zu platzieren? Danach wird es zur Startseite weitergeleitet ... also nicht sicher, warum dies nicht der richtige Ort ist.

// POST: /Account/Login

        [HttpPost]
        [AllowAnonymous]
        [ValidateAntiForgeryToken]
        public ActionResult Login(LoginModel model, string returnUrl)
        {
            if (ModelState.IsValid && WebSecurity.Login(model.UserName, model.Password, persistCookie: model.RememberMe))
            {
                //TODO: set current company and facility based on those this user has access to
                int intUserId = WebSecurity.GetUserId(User.Identity.Name);
                int intUserId2 = WebSecurity.GetUserId(model.UserName);
                UserSessionPreferences.CurrentCompanyId = 1;
                UserSessionPreferences.CurrentFacilityId = 1;

                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);
        }

Antworten auf die Frage(1)

Ihre Antwort auf die Frage