簡體   English   中英

無法檢查用戶是否在角色ASP.NET Identity 2.0中

[英]Cant check if User is in a Role ASP.NET Identity 2.0

因此,我試圖建立Identitie的個人身份驗證系統,但是我對用戶角色所做的每項檢查都返回false,這是我的登錄控制器,如果可以進行角色檢查,我將在其中重定向用戶。

var result = await SignInManager.PasswordSignInAsync(model.Email, model.Password, model.RememberMe, shouldLockout: false);
        switch (result)
        {
            case SignInStatus.Success:
                var r = Roles.IsUserInRole( "Trainer");
                var y = User.IsInRole("Trainer");
                return RedirectToAction("index", "Home");

每次我運行這兩個方法(變量r和y)都返回false。 我已啟用RoleManager與
<roleManager enabled="true" defaultProvider="AspNetWindowsTokenRoleProvider"/>
我肯定有一個角色“ Trainer”,因為我運行它來使測試用戶await UserManager.AddToRoleAsync(user.Id, "Trainer");

看起來您將Microsoft.AspNet.IdentitySystem.Web.Security混合使用,但無法正常工作。

我現在無法實際嘗試,但是使用UserManager應該會更好。 就像是

SignInManager.UserManager.IsInRoleAsync(model.Email, "Trainer");

請參閱此SO答案以獲取更多信息

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM