C# 关于Attribute的初级应用
2017-10-16 14:58
357 查看
主要是在做关于角色权限验证时用到的
关于后台页面只能被管理员访问,所以单独在每个后台页面的controller上加上对应标签,[Seetting]要放在最前面,即public的前面
然后就是关于Attribute的编写:
namespace System.Web.Mvc
{
//这一行是对这个方法的实例化
[AttributeUsage(AttributeTargets.Class | AttributeTargets.Method, AllowMultiple = false, Inherited = true)]
public sealed class SettingAttribute : AuthorizeAttribute
{
// 初始化 System.Web.Mvc.SettingAttribute 类的新实例。
//public SettingAttribute();
public override void OnAuthorization(AuthorizationContext filterContext)
{
if (filterContext == null)
{
throw new ArgumentNullException("filterContext");
}
#region 判断是否为管理员
if (!Common.CheckSettingUser())
{
filterContext.Result = new RedirectResult("~/Error/NoPermission");
}
#endregion
}
}
}
关于后台页面只能被管理员访问,所以单独在每个后台页面的controller上加上对应标签,[Seetting]要放在最前面,即public的前面
然后就是关于Attribute的编写:
namespace System.Web.Mvc
{
//这一行是对这个方法的实例化
[AttributeUsage(AttributeTargets.Class | AttributeTargets.Method, AllowMultiple = false, Inherited = true)]
public sealed class SettingAttribute : AuthorizeAttribute
{
// 初始化 System.Web.Mvc.SettingAttribute 类的新实例。
//public SettingAttribute();
public override void OnAuthorization(AuthorizationContext filterContext)
{
if (filterContext == null)
{
throw new ArgumentNullException("filterContext");
}
#region 判断是否为管理员
if (!Common.CheckSettingUser())
{
filterContext.Result = new RedirectResult("~/Error/NoPermission");
}
#endregion
}
}
}
相关文章推荐
- Nhibernate在C#上的初级应用
- 关于c#调用C++代码的一些应用的体会
- C#基础---Attribute(标签) 和 reflect(反射) 应用
- C#中Attribute的应用
- C#基础---Attribute(标签) 和 reflect(反射) 应用二
- 关于C#/.NET中委托和事件的机制和应用的故事(转)
- C#关于For循环break,goto,return的应用
- 【转】关于C# 中的Attribute 特性
- 详解C#中Attribute特性应用 (转载)
- 关于C#/.NET中委托和事件的机制和应用的故事(转)
- [转]关于C#开发GIS应用简明教程的说明
- 关于Gis的c#开发,mapinfor 的应用
- 关于c#中timer类 在c#里关于定时器类就有3个_c#应用
- C#关于ListView控件连接数据库功能应用
- 关于百度编辑器UEditor(1.4.3)在C#.NET中的应用实例
- C#:反射以及Attribute在ORM中的应用 [转载]
- 关于C# 中的Attribute 特性
- 一起谈.NET技术,关于C# 中的Attribute 特性
- C# 特性(Attribute)学习 关于 .net中[]的解释
- 关于C# 中的Attribute 特性【转】