asp.net mvc - c#用户.IsInRole名称空间
本文关键字:IsInRole 空间 用户 net mvc asp | 更新日期: 2023-09-27 17:51:05
注意,我正在使用c# MVC 3,我试图在类中使用它,而不是控制器。
我的程序顶部有以下内容
using System.Web.Security;
我尝试做以下操作,但得到消息:
名称"User"在当前上下文中不存在。
这是我的部分代码:
using System.Web.Security;
....
....
if (User.IsInRole("Admin"))
{
}
我认为它必须与名称空间做一些事情,但看看文档,我所需要的只是System.Web.Security。
Try first:在执行视图时,检查控制器HttpContext.Current.User.IsInRole("Admin")
中的以下内容-这一行检查您的值。
它应该返回一个bool
值,如果你有当前的HttpContext加载。
解决方案#2:查看默认的mvc3项目:
Context.User.IsInRole("Admin")
代替Page.User.IsInRole("Admin")
。
另外:您可以查看这篇关于如何设置角色使用- User的文章。IsInRole(" ")不使用成员关系。
查看 ASP.NET MVC Membership
类的用法:
- ASP中的
- 成员和授权Net MVC 3 Razor
- simplememmembership, Membership Providers, Universal Providers和新的ASP。. NET 4.5 Web Forms和ASP. NET. NET MVC 4模板
- Asp.net成员-如何以编程方式确定用户是否在角色 中
- ASP。. NET MVC成员角色
add using System.Web.Mvc;
应该可以了
所以根据你的评论,我要假设你在一个类,不是一个控制器,但在你的MVC项目内工作。所以你应该能够做你想做的事情,像这样
if(HttpContext.Current.User.IsInRole("Admin"))
{
//...
}
使用System.Web.HttpContext.Current.User.IsInRole("yourRole")
希望对你有帮助