using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using PaiXie.Core;
using Newtonsoft.Json;
using PaiXie.Utils;
using PaiXie.Bll;
namespace PaiXie.Pos.Admin {
/// <summary>
/// 权限控制
/// </summary>
public class MvcMenuFilter : ActionFilterAttribute { #region 权限控制 private bool _isEnable = true; public MvcMenuFilter() {
_isEnable = true;
} public MvcMenuFilter(bool IsEnable) {
_isEnable = IsEnable;
} public override void OnActionExecuting(ActionExecutingContext filterContext) { try {
//默认true 执行验证
if (_isEnable) {
var route = filterContext.RouteData.Values;
string area = filterContext.RouteData.DataTokens["area"].ToString();
var url = string.Format("/{0}/{1}/{2}", area, route["controller"], route["action"]);
//没有权限
if (!new Users().IsAuth(url)) {
//if (_isEnable) {
BaseResult BaseResult = new BaseResult();
BaseResult.result = -99;
BaseResult.message = "没有权限!";
string str = JsonConvert.SerializeObject(BaseResult, Formatting.Indented);
ContentResult ContentResult = new ContentResult();
ContentResult.Content = str;
filterContext.Result = ContentResult;
//}
}
}
}
catch (Exception ex) { PlanLog.WriteLog(ex.ToString(), "MvcMenuFilter"); }
base.OnActionExecuting(filterContext);
}
#endregion
}
}

  

mvc 权限验证的更多相关文章

  1. NET MVC权限验证

    ASP.NET MVC权限验证 封装类 写该权限类主要目地 为了让权限配置更加的灵活,可以根据SQL.json.或者XML的方式来动态进行页面的访问控制,以及没有权限的相关跳转. 使用步骤 1.要建一 ...

  2. ASP.NET MVC权限验证 封装类

    写该权限类主要目地 为了让权限配置更加的灵活,可以根据SQL.json.或者XML的方式来动态进行页面的访问控制,以及没有权限的相关跳转. 使用步骤 1.要建一个全局过滤器 //受权过滤器 publi ...

  3. C# MVC权限验证

    前言 之前一直没怎么接触过权限验证这块,刚好公司老平台改版,就有了这篇权限验证.此篇文章大致讲解下 精确到按钮级别的验证如何实现.以及权限验证设计的参考思路(菜鸟一枚,大神勿喷). 在开发大项目的时候 ...

  4. 关于filter web api mvc 权限验证 这里说的够详细了。。。

    参考:http://www.cnblogs.com/willick/p/3331520.html Filter(筛选器)是基于AOP(面向方面编程)的设计,它的作用是对MVC框架处理客户端请求注入额外 ...

  5. MVC权限验证过滤器

    Action属性,权限设定属性   [AttributeUsage(AttributeTargets.Method, Inherited = true, AllowMultiple = false)] ...

  6. .net web mvc 权限验证

    这里分享MVC的权限验证,内容中可能存在一些,莫名其妙的方法,那些是以前封装好的,大致可以根据方法名称知道他的意思. using Game.Entity; using Game.Entity.Plat ...

  7. MVC权限验证之ActionFilterAttribute

    参考:http://www.cnblogs.com/waitingfor/archive/2011/12/27/2303784.html ActionFilterAttribute是Action过滤类 ...

  8. mvc权限验证--AuthorizeAttribute

    在做后台管理时用户登录后就需要验证哪些权限了,没有登录的就直接退出到登录页面. 系统有自带的权限[Authorize],可用于几个地方: 1.将属性[Authorize]置于相关的action上方,验 ...

  9. Asp.net MVC 权限验证,以及是否允许匿名访问

    public class CheckUserAttribute : ActionFilterAttribute, IAuthorizationFilter { public void OnAuthor ...

随机推荐

  1. Android 演示 DownloadManager——Android 下载 apk 包并安装

    本文内容 环境 项目结构 演示下载 参考资料 本文是 github 上 Trinea-Android-common 和 Trinea-Android-Demo 项目的一部分,将下载部分分离出来,看看如 ...

  2. Global Web Index发布社交网络现状调查,Snapchat增速领跑移动端所有App,四分之一Facebook用户年龄在45岁以上【转载+整理】

    原文地址 有次上班做公交,期间听到一个老太太说:"我加你微信啊--",还有一次去看老中医,并交换了电话,可当我回去后发现这个大夫竟然加了我微信--这些都令我有点吃惊,连60.70岁 ...

  3. TCP连接的建立和断开

    1.TCP连接的建立            设主机B运行一个服务器进程,它先发出一个被动打开命令,告诉它的TCP要准备接收客户进程的连续请求,然后服务进程就处于听的状态.不断检测是否有客户进程发起连续 ...

  4. LintCode: Unique Characters

    C++, time: O(n^2) space: O(0) class Solution { public: /** * @param str: a string * @return: a boole ...

  5. js - 关于循环

    ES5:for,foreach,for..in ES6:for..of // ES5(可参见ES6的析构写法) const value = ["a", "b", ...

  6. Linux开机自动启动某一程序

    Linux开机启动程序详解我们假设大家已经熟悉其它操作系统的引导过程,了解硬件的自检引导步骤,就只从Linux操作系统的引导加载程序(对个人电脑而言通常是LILO)开始,介绍Linux开机引导的步骤. ...

  7. angularjs也支持script形式的template

    <script type="text/ng-template" id="name"> https://docs.angularjs.org/api/ ...

  8. 给go程序添加命令行参数

    操作系统: CentOS 6.9_x64 go语言版本: 1.8.3 问题描述 需要应用程序根据不同的配置文件访问不同的服务器,希望程序启动时可以指定配置文件. 解决方案 package main i ...

  9. Linux文件与目录操作

    1:目录操作指令 cd :切换目录 pwd:显示当前目录 mkdir:创建一个新目录 rmdir:删除一个空的目录rmdir -r:删除一个非空目录 . :此层目录 .. :上层目录 -:前一个工作目 ...

  10. Oracle官方文档

    Oracle DBA 10g 两日速成课程 http://www.oracle.com/webfolder/technetwork/cn/tutorials/obe/db/10g/r2/2day_db ...