View页面根据权限显示不同的内容
1、View中根据权限显示相关操作按钮
@if (CoreTools.CheckAction(HttpContext.Current, "Delete"))
{
<div class="pull-right margin-right-10">
<a id="delete" href="javascript:;" class="btn btn-fit-height red-haze">
<i class="fa fa-trash"></i> 删除
</a>
</div>
}
2、权限检查函数
public static bool CheckAction(string UserAccount, string ControllerName, string ActionName, bool SessionCache = true)
{
return GetRoleAction(UserAccount, SessionCache).Where(x => x.ControllerName == ControllerName && x.ActionName == ActionName).Count() > 0 ? true : false;
}
public static bool CheckAction(HttpContext context, string ActionName, bool SessionCache = true)
{
if (context.User.Identity.IsAuthenticated)
{
string UserAccount = context.User.Identity.Name;
string ControllerName = context.Request.RequestContext.RouteData.Values["controller"].ToString();
return CheckAction(UserAccount, ControllerName, ActionName, SessionCache);
}
else
{
return false;
}
}
3、根据权限显示相关菜单项
@foreach (var Menu in CoreTools.GetAllMenu().Where(x => x.RootLevel == 0).OrderBy(x=>x.OrderIndex))
{
//判断是否有子菜单
var SubMenus = CoreTools.GetRoleMenu(HttpContext.Current).Where(x => x.ParentGUID == Menu.GUID && x.RootLevel == 1).OrderBy(x => x.OrderIndex);
<li>
@if (SubMenus.Count() > 0)
{
<a href="javascript:;">
<i class="@Menu.IconClass"></i>
<span class="title">@Menu.DisplayName</span>
<span class="arrow "></span>
</a>
<ul class="sub-menu">
@foreach (var SubMenu in SubMenus)
{
<li>
<a href="@SubMenu.RequestUrl" id="@SubMenu.GUID">
<i class="fa @SubMenu.IconClass"></i>
@SubMenu.DisplayName
</a>
</li>
}
</ul>
}
</li>
}
View页面根据权限显示不同的内容的更多相关文章
- asp.net core根据用户权限控制页面元素的显示
asp.net core根据用户权限控制页面元素的显示 Intro 在 web 应用中我们经常需要根据用户的不同允许用户访问不同的资源,显示不同的内容,之前做了一个 AccessControlHelp ...
- MVC下 把数据库中的byte[]值保存成图片,并显示在view页面
MVC下 把数据库中的byte[]值转成图片,并显示在view页面 controller中的action方法 //显示图片[AllowAnonymous]public ActionResult Sho ...
- 如何让同一个字段在不同的view中显示不同的内容
many2one 字段默认显示 对象的name字段, 但也可以定义name_get方法显示不同的内容 如res.partner 对象可以根据 context 内容是否显示 客户的地址,职位,email ...
- Asp.Net Core 2.0 项目实战(11) 基于OnActionExecuting全局过滤器,页面操作权限过滤控制到按钮级
1.权限管理 权限管理的基本定义:百度百科. 基于<Asp.Net Core 2.0 项目实战(10) 基于cookie登录授权认证并实现前台会员.后台管理员同时登录>我们做过了登录认证, ...
- net core体系-web应用程序-4asp.net core2.0 项目实战(1)-13基于OnActionExecuting全局过滤器,页面操作权限过滤控制到按钮级
1.权限管理 权限管理的基本定义:百度百科. 基于<Asp.Net Core 2.0 项目实战(10) 基于cookie登录授权认证并实现前台会员.后台管理员同时登录>我们做过了登录认证, ...
- [ASP.NET MVC] 使用CLK.AspNet.Identity提供依权限显示选单项目的功能
[ASP.NET MVC] 使用CLK.AspNet.Identity提供依权限显示选单项目的功能 CLK.AspNet.Identity CLK.AspNet.Identity是一个基于ASP.NE ...
- JS随鼠标坐标移动,显示浮动层内容
在表单等项目中往往会遇到类似于“备注”.“说明”等100个字内的内容需要显示. 这些内容如果全部呈现开,会影响布局和美观,确又没有必要设计一个层或是一个页面. 那么,我们可以把这些内容放到浮动层中,鼠 ...
- iframe中子页面通过js计算高度(使得页面不会显示不全)
使用过iframe的人,都知道,它是一个模版,里面有一个iframe,而iframe当中,是可以嵌套多个页面的.(比较常见的问题,就是iframe页面中,经常会出现内容显示不全的时候). 谨记,通过j ...
- ASP.NET MVC 学习3、Controller左手从Model获取数据,右手传递到View页面
参考:http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/accessing-your-models-dat ...
随机推荐
- IDA*
模拟退火 基本思路(Main Thoughts): IDA*是一种优秀的搜索法,在一般的实际问题中,它比普通的搜索更快. 通过迭代加深和估价函数剪枝来搜索. 通常处理没有层数上界或上界很多大的搜索. ...
- sqlite时间比较语法
如下: 字段 > datetime('2000-01-01 01:01:01') AND 字段 < datetime('2001-01-01 01:01:01');
- 女性社区TOP10
“女性和孩子的钱是世界上最好赚的”并不是一句空话.据统计,女性掌管着家庭70%的支出,如果你能让女性为你掏出腰包,那么你基本就掌控了一个家庭的大部分的消费. 有趣的是,女性还是一个喜欢分享的群体,他们 ...
- Fiddler 过滤 css,图片等请求url 正则表达式
设置步骤: 1.勾选 Request Headers 中的 Hide if url contains 过滤项 2.贴入下方正则表达式 REGEX:(?insx)/[^?/]*.(css|ico|jpg ...
- TGL站长关于常见问题的回复
问题地址: http://www.thegrouplet.com/thread-112923-1-1.html 问题: 网站配有太多的模板是否影响网站加载速度 月光答复: wp不需要删除其他的模板,不 ...
- fiddler 代理不成功调试
按照 http://jingyan.baidu.com/article/03b2f78c7b6bb05ea237aed2.html 设置. 之前可以用, 现在不能用. 1. 关闭 系统防火墙 2. 换 ...
- linux yum 命令 详解
linux yum命令详解 yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器.基於RPM包管理,能 ...
- STM32 对内部FLASH读写接口函数
因为要用内部FLASH代替外部EEPROM,把参数放在STM32的0x08000000+320K处,其中20K是bootloader,300K是应用程序. 原理:先要把整页FLASH的内容搬到RAM中 ...
- delphi快捷键
分类 快捷键 解释 备注 组 件 设 计 类 Escape 选择当前组件容器 Shift + Click 选择多个组件:选择窗体 Tab 选择下一个组件 Shift + Tab ...
- POJ 2549
Sumsets Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 8235 Accepted: 2260 Descripti ...