首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >ASP.NET身份检查用户角色不起作用

ASP.NET身份检查用户角色不起作用
EN

Stack Overflow用户
提问于 2013-11-22 05:56:37
回答 3查看 25.3K关注 0票数 23

我有一个ASP.NET MVC5应用程序。我使用标准的ASP.NET身份提供者进行用户和角色管理。使用自己的存储库项目中的IdentityUser是很重要的,但这似乎没问题。我可以注册、登录、编辑用户和管理他们的角色。

我用以下几行代码将用户添加到角色:

代码语言:javascript
复制
UserManager.AddToRole(userdetail.Id, r);
db.Entry(userdetail).State = EntityState.Modified;
db.SaveChanges();

这似乎可以在数据库级别工作。

但是,我不能使用基于角色的身份验证,实际上

代码语言:javascript
复制
HttpContext.User.IsInRole("Administrator")

也不起作用。

代码语言:javascript
复制
[Authorize(Roles="Administrator")]

也不起作用。

我只能通过这种方式来检查用户是否为管理员:

代码语言:javascript
复制
UserManager.IsInRole(userID, "Administrator").

为什么?

在我发现的每个教程中,一切都运行得很好。不同的项目存储库可能是原因?还是ASP.NET身份被破坏得如此之深?

敬请指教,

EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20132795

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档