NET MVC 5 einfacher Mitgliedschaftsanbieter. Wenn ich meinen Benutzer erstelle, wenn alles in Ordnung ist, habe ich ihn eingeloggt, später möchte ich Informationen über ihn finden. Aber ich kann den angemeldeten Benutzer nicht erreichen. Dies ist mein Code:Warum kann ich meinen derzeitigen Benutzer nicht erreichen, nachdem ich mich angemeldet habe?
[AllowAnonymous]
[ValidateAntiForgeryToken]
public async Task<ActionResult> Register(RegisterViewModel model)
{
if (ModelState.IsValid)
{
var user = new ApplicationUser { UserName = model.Email, Email = model.Email };
var result = UserManager.Create(user, model.Password);
if (result.Succeeded)
{
SignInManager.SignIn(user, isPersistent: false, rememberBrowser: false);
var id = User.Identity.GetUserId();
Also, wenn ich das Debuggen und gehen Sie auf die User.Identity.GetUserId();
seiner Null. Check it out:
Sie kennen bereits die Benutzer-ID: 'user.Id'. 'User.Identity' betrachtet die Eigenschaften der Anfrage, und da sie noch nicht festgelegt wurden, werden Sie als nicht authentifiziert betrachtet. Bei der ** next ** -Anfrage vom Client werden die richtigen Bits aufgefüllt, da der Cookie auf dem Client gesetzt wird. –
@ BrendanGreen Eigentlich hilft das. Weißt du, wieso ist das in der nächsten Anfrage, die ich die Bits bevölkert habe? –