我创建了我的won authorize属性。在控制器中工作得很好。
我如何在视图中使用它。
示例:我有一个管理用户链接,如果您没有访问此页面的权限,我不想显示该链接。
这是我的授权属性。
public class UserAuthorizeAttribute : AuthorizeAttribute
{
protected override bool AuthorizeCore(HttpContextBase httpContext)
{
if (httpContext.Session["UserID"] == null)
{
return false;
}
IIssUserRepository repUser = new IssUserRepository(EntityFactory.GetEntity());
IssUser usr = repUser.GetUserByID(Convert.ToInt32(httpContext.Session["UserID"]));
return usr.CanManageUser;
}
public override void OnAuthorization(AuthorizationContext filterContext)
{
base.OnAuthorization(filterContext);
if (filterContext.Result is HttpUnauthorizedResult)
{
filterContext.Result = new RedirectToRouteResult(
new RouteValueDictionary {
{ "clubShortName", filterContext.RouteData.Values[ "clubShortName" ] },
{ "area",""},
{ "controller", "Account" },
{ "action", "Unauthorized" }
});
}
}
}
以下是我如何在控制器中使用它:
[UserAuthorize]
public class UserController : Controller
我需要在视图中使用它。但是如何
<li class="CssMenui">Product</li>
<%if (......... UserAuthorize .......) %>
<li class="CssMenui">User Management</li>
<li class="CssMenui">Other</li>