我是.net和mvc3的新手。
在我的应用中,我有两个不同的角色,管理员和基本用户。管理员可以查看所有内容,但用户只能看到与其关联的项目。
我在我的控制器中这样做:
private MembershipExtContext db = new MembershipExtContext();
[Authorize]
public ViewResult Index()
{
var thing1s = db.Thing1.Include(i => i.Thing2);
return View(thing1s.ToList());
}
我希望它能使基本查询(db.Thing1.Include(i => i.Thing2);)仅返回当前用户可以看到的项目。否则,我需要为每个角色单独进行查询。
这可能吗?如果是这样,怎么样?
如果需要,我首先使用mvc3和entity4代码。
答案 0 :(得分:0)
这样做的一种方法是
if(Roles.IsUserInRole(User.Identity.Name, "Admin")
{
do stuff
return View();
}
else
{
//do non admin stuff
return View();
}
这假设您的管理员用户在您的角色中被称为“管理员”,并且您只有两种角色类型。