我有一個ASP.NET MVC 5應用程序。我正在使用標準的ASP.NET身份提供程序進行用戶和角色管理。從自己的存儲庫項目中使用IdentityUser很重要,但這看起來沒問題。我可以註冊,登錄,編輯用戶並管理他們的角色。ASP.NET身份檢查用戶角色不起作用
我添加用戶到角色與這些行:
UserManager.AddToRole(userdetail.Id, r);
db.Entry(userdetail).State = EntityState.Modified;
db.SaveChanges();
這似乎在DB級別工作。
但是,我不能使用基於角色的身份驗證,實際上
HttpContext.User.IsInRole("Administrator")
不工作太simples。
[Authorize(Roles="Administrator")]
不起作用。
我可以用這個方法只檢查,用戶是否是管理員:
UserManager.IsInRole(userID, "Administrator").
爲什麼?
在每一個教程中,我發現,一切工作正常。不同的項目存儲庫可能是原因?還是ASP.NET身份被打破了這麼多?
請指教,
我有同樣的問題。任何解決方案 – janhartmann
答案已發佈。接受。一個由jd4u。 – DtechNet