我需要确定用户仅是否为销售员。我的ASP.NET MVC 4控制器中有以下内容:
public ActionResult Index() {
string salespersonCode = null;
var roles = Roles.GetRolesForUser();
if(roles.Count() == 1 && roles.Contains(UserRoles.Salesperson.ToString()))
salespersonCode = User.Name();
return View(new ProspectIndexViewModel { Prospects = _crmService.GetActiveProspects(salespersonCode) });
}
用户可能有多个角色。如果用户只有该角色,我想将返回的数据限制为仅属于销售人员的数据。其他三个角色(Manager,Admin和SalesAdministrator)将接收整个列表。谢谢!
答案 0 :(得分:5)
答案 1 :(得分:0)
var roles = Roles.GetRolesForUser();
if(!roles.Any(r => r != UserRoles.Salesperson.ToString()))
salespersonCode = User.Name();
答案 2 :(得分:-1)
尝试使用
if (Page.User.IsInRole("Salesperson")) { ... };