我需要[Authorize]像ASP.Net mvc 3/4中的自定义属性。像下面的东西。
[AdminOnly]
public ActionResult OpenAddListUser()
{
//Do some actions
}
这里[AdminOnly]将检查一些用户信用。我需要的只是如果AdminOnly无效,则返回一些ActionResult视图或重定向到其他视图,如登录。
答案 0 :(得分:3)
public class AdminOnly : AuthorizeAttribute
{
protected override bool AuthorizeCore(HttpContextBase httpContext)
{
bool baseAuthorized = base.AuthorizeCore(httpContext);
if (!baseAuthorized) {
return false;
}
//here should be your admin checking logic
bool isAdmin = YourLogic.IsAdmin(httpContext.User.Identity.Name);
return isAdmin;
}
}
}