• Bootstrap+angularjs+MVC3+分页技术+角色权限验证系统


    1.Bootstrap使用教程

    相关教程: http://www.bootcss.com/components.html

    页面使用代码:

    <script src="@Url.Content("~/Content/Bootstrap/js/bootstrap.min.js")"></script>
    <link href="@Url.Content("~/Content/Bootstrap/css/bootstrap.min.css")" rel="stylesheet" media="screen"/>

    2.angularjs

    <script src="@Url.Content("~/Scripts/angular.min.js")"></script>

     <script type="text/javascript">

        var app = angular.module("ControlState", []);
        app.controller("Home/Login"function ($scope,$window) {
            $scope.login = function(user) {
                 var url="@Url.Action("Login","Home")";
                
               $.post(url,user,function(ret){
                       if(ret=="False"){
                       art.dialog.tips('用户名或密码错误,请重新输入!'1.5);
                       $('form')[0].reset();  
                       $('form input')[0].focus();
                                     
                           
                       }else{
                           if(user.UserName=="admin")
                               location="Index";
                           else
                               location="Contact";
                       }
               }); 
            };
             
        });

    3.分页

    public ActionResult MessageBox(int?id){
                int pageID=1;
                if (id.HasValue) {
                    pageID=id.Value;
                }
                 
                var list=DBFactory.GetEntities<Message>(MessageTable.MessageToUserID.Equal(SystemGlobalData.CURRENT_USERID).And(MessageTable.Deleted.Equal(0)));
                var count=DBFactory.GetInt32Count(MessageTable.MessageToUserID.Equal(SystemGlobalData.CURRENT_USERID).And(MessageTable.Deleted.Equal(0)));
                PagedList<Message> pList=new PagedList<Message>(list,pageID,5);
                return View(pList );
            }

    前端代码

    View Code


    4.权限角色验证

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Web;
    using System.Web.Mvc;
    using System.Xml.Linq;

    using Moon.Orm;
    using mynorthdb;

    namespace Razor.Moon
    {
        /// <summary>
        
    /// Description of CheckLoginAttribute.
        
    /// </summary>
        public class CustemerAuthenAttribute:AuthorizeAttribute
        {
            public new string[] ActionRoles { getset; }
            protected override bool AuthorizeCore(HttpContextBase httpContext)
            {
                if (httpContext == null) {
                    throw new ArgumentNullException("HttpContext");
                }
                if (!httpContext.User.Identity.IsAuthenticated) {
                    return false;
                }
                if (ActionRoles == null) {
                    return true;
                }
                if (ActionRoles.Length == 0)
                {
                    return true;
                }
                if (ActionRoles.Contains(httpContext.User.Identity.Name))
                {
                    return true;
                }
                return false;
            }
            protected override void HandleUnauthorizedRequest(AuthorizationContext filterContext)
            {
                var  Request=filterContext.HttpContext.Request;
                string url=Request.Url.Scheme+"://"+Request.Url.Authority+"/Home/Login";
                filterContext.Result = new RedirectResult(url);
            }
            public override void OnAuthorization(System.Web.Mvc.AuthorizationContext filterContext)
            {
                string controllerName = filterContext.ActionDescriptor.ControllerDescriptor.ControllerName;
                string actionName = filterContext.ActionDescriptor.ActionName;
                string roles = ActionRoleManager.GetActionRoles(actionName, controllerName);
                if (!string.IsNullOrWhiteSpace(roles)) {
                    this.ActionRoles = roles.Split(new string[] { "," }, StringSplitOptions.RemoveEmptyEntries);
                }
                base.OnAuthorization(filterContext);
            }
        }
    }

     5.效果图

    6.项目下载

    http://files.cnblogs.com/humble/%E9%A1%B9%E7%9B%AE%E5%8F%8A%E6%95%B0%E6%8D%AE%E5%BA%93.7z 

  • 相关阅读:
    分享几个python小脚本
    关于python编译的一点小结
    一位测试工程师工作一年的心得体会
    Zookeeper知识梳理
    Kafka知识梳理(转载)
    霍夫曼编码压缩算法(转载 -- www.uusystem.com)
    表、栈和队列
    Python3正则表达式清洗Excel文档
    MongoDB学习笔记
    Centos--Docker应用
  • 原文地址:https://www.cnblogs.com/humble/p/3149734.html
Copyright © 2020-2023  润新知