Bootstrap+angularjs+MVC3+分頁技術+角色權限驗證系統

1.Bootstrap使用教程

相關教程: http://www.bootcss.com/components.htmljavascript

頁面使用代碼:css

<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">html

     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 Codejava


4.權限角色驗證angularjs

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 bootstrap

相關文章
相關標籤/搜索