Bekommen Rolle der/s angemeldeten Benutzer in ASP.NET Kern MVC

Wie kann ich die angemeldeten Benutzer die Rolle der/s in ASP.NET Core-MVC? Ich will Funktionsdetails, sobald Benutzer sich anmeldet, in der Anwendung, aber mit den folgenden code, den ich bin nicht in der Lage zum abrufen der Rolle details

public async Task<IActionResult> Login(LoginViewModel model, string returnUrl = null)
{
    ViewData["ReturnUrl"] = returnUrl;
    if (ModelState.IsValid)
    {

        var result = await _signInManager.PasswordSignInAsync(model.Email, model.Password, model.RememberMe, lockoutOnFailure: false);

        if (result.Succeeded)
        {
            _logger.LogInformation(1, "User logged in.");

           bool available = User.IsInRole("Admin"); 
            return RedirectToLocal(returnUrl);
        }
        if (result.RequiresTwoFactor)
        {
            return RedirectToAction(nameof(SendCode), new { ReturnUrl = returnUrl, RememberMe = model.RememberMe });
        }
        if (result.IsLockedOut)
        {
            _logger.LogWarning(2, "User account locked out.");
            return View("Lockout");
        }
        else
        {
            ModelState.AddModelError(string.Empty, "Invalid login attempt.");
            return View(model);
        }
    }

    //If we got this far, something failed, redisplay form
    return View(model);
}

Auch, ich habe die unten Methoden wie

var user = new ApplicationUser { UserName = model.Email, Email = model.Email };

var userRoles = await _userManager.GetRolesAsync(user);

Immer noch, ich bin nicht in der Lage, die Rolle details. Kann mir jemand bitte helfen?

Sie müssen zum abrufen der Benutzer aus der Datenbank. Man kann nicht einfach einen neuen Benutzer erstellen Instanz und füllen Sie einige der Eigenschaften.

InformationsquelleAutor XamDev | 2016-05-31

Schreibe einen Kommentar