您的位置:首页 > 其它

mvc继承BaseController实现页面访问权限控制

2016-10-18 14:39 381 查看
创建BaseController.cs ,重写Initialize()方法

protected override void Initialize(RequestContext requestContext)
{
base.Initialize(requestContext);
bool IsOK = false;
//获取当前访问页面地址
string requestPath = RequestHelper.GetScriptName;
string[] filterUrl = { //无需授权能打开的界面

};//过滤特别页面
//对上传的文件的类型进行一个个匹对
for (int i = 0; i < filterUrl.Length; i++)
{
if (requestPath == filterUrl[i])
{
IsOK = true;
break;
}
}
if (!IsOK)
{
string UserId = RequestSession.GetSessionUser().UserId.ToString();//用户ID
DataTable dt = sys_idao.GetPermission_URL(UserId);
DataView dv = new DataView(dt);
dv.RowFilter = "NavigateUrl = '" + requestPath + "'";
if (dv.Count == 0)
{
StringBuilder strHTML = new StringBuilder();
strHTML.Append("<div style='text-align: center; line-height: 300px;'>");
strHTML.Append("<font style=\"font-size: 13;font-weight: bold; color: red;\">权限不足</font></div>");
requestContext.HttpContext.Response.Write(strHTML);
requestContext.HttpContext.Response.End();
}
}
}
其他Controller继承BaseController就能实现页面的权限控制
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  mvc 权限 BaseController