源代码GitHub:https://github.com/ZhaoRd/Zrd_0001_AuthorityManagement

1.系列介绍

工作已有五年之久,一直有想通过博客写点自己知道的,在博客园里看到很多大牛都在分享自己的研究成功,比如郭明峰(OSharp作者)、阳光铭睿(ABP领导使用者)、圣殿骑士(设计的权限管理来源于他的博客)等等,以及其他大牛的博客,看他们的博客,有种受益匪浅的感觉。

从去年9月份开始公司有项目要求使用web,学了asp.net mvc4,从此一发不可收拾,慢慢的在web开发方面也积累了一些经验和心得。

权限管理,是一个系统必不可少的一部分,C#也有成熟的框架可用,本人愚钝,一直没搞明白怎么使用框架,自己Fork了OSharp的代码,发现作者也在开发权限的功能,于是借鉴了部分代码,在结合以前使用过二进制进行权限管理的经验,于是在此处分享。

此系列博客主要从理论基础知识到C#实现,然后前端代码的一个分享过程。

2.开源推荐

smartstore.net:国外一款NET的开源电子商务的应用程序,采用DDD开发设计,提供插件式开发,我在本Demo里的使用的核心类库大部分都是来源次开源代码。注:核心类库目前正处于整理状态,暂不开源

aprowks:一套实现CQRS(读写分离)架构的DDD框架,接触DDD领域来使用的最好用的一个框架,为我解决了DDD大部分的功能,十分喜欢。

OSharp:一套DDD的开发框架,拥有强大的Linq扩展,本Demo的部分代码来自OSharp

ASP.NET Boilerplate Project:Asp.net项目框架,提供了诸多功能,基于DDD分层架构设计

3.使用思想和技术

分层思想:DDD分层思想(对DDD尚不清楚的可移步到郭明峰博客)

具体技术:

aps.net mvc4

entityframwroek

log4.net

autofac

automapper

angularjs

bootstrap

angle

...

4.前端框架介绍

angularjs : 一套前端mvvm设计的框架,使用过ko,目前来说是我使用过最爽的一套前端框架

bootstrap: 推特推出的一套前端界面的css类库,解决了屏幕自适应等问题

angle:一套结合angularjs和bootstrap开发的admin的页面模板,非免费,如有需要请另行到官网购买

郑重申明:

本Demo的代码大部分来源于网络,如有作者发现代码类似,可与本人联系,联系方式见下文。谢谢!

5.二进制权限管理的Demo目录:

第一章:权限管理DEMO简介

第二章:基于二进制进行权限管理的理论知识

第三章:项目结构和分层架构

第四章:功能初始化

第五章:权限验证

第六章:用户管理

第七章:权限管理

第八章:前端框架

第九章:Anglur

第十章:用户管理界面

第十一章:权限管理界面

第十二章:总结

推荐QQ群:

278252889(AngularJS中文社区)

5008599(MVC EF交流群)

134710707(ABP架构设计交流群 )

59557329(c#基地 )

230516560(.NET  DDD基地 )

本人联系方式:QQ:351157970

第一章 权限管理DEMO简介的更多相关文章

  1. mvc 权限管理 demo

    http://blog.csdn.net/zht666/article/details/8529646 new http://www.cnblogs.com/fengxing/archive/2012 ...

  2. 第一章ASP.NET SignalR简介

    第一章ASP.NET SignalR简介 1.1概述: ASP.NET SignalR是微软新开发的类库,为的是帮助ASP.NET开发人员很方便地开发实时网络功能. SignalR允许服务器端和客户端 ...

  3. 核心系统命令实战 第一章Linux命令行简介

    第一章Linux命令行简介 1.1 Linux命令行概述 1.1.1 Linux 命令行的开启和退出 开启:登陆账号密码进入系统 退出:exit/logout  快捷键:Ctrl+d 1.1.2 Li ...

  4. 第一章、PyQt的简介、安装与配置

    老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 第一章.PyQt的简介.安装与配置 一.引言 当朋友向我推荐PyQt时,老猿才知道有这样一个在Pyt ...

  5. Java 7 Concurrency Cookbook 翻译 第一章 线程管理之一

    一.简介 在计算机的世界里,当我们谈论并发时,我们指的是一系列的任务同时运行于一个计算机中.这里说的同时运行,在计算机拥有多于一个处理器或者是一个多核处理器的时候才是真正的同时,在计算机只拥有单核处理 ...

  6. Python开发【第一章】:Python简介和入门

    Python简介 Python的创始人为Guido van Rossum.1989年圣诞节期间,在阿姆斯特丹,Guido为了打发圣诞节的无趣,决心开发一个新的脚本解释程序,做为ABC 语言的一种继承. ...

  7. 第7章 权限管理(1)_ACL权限

    1. ACL权限 1.1 ACL权限简介与开启 (1)ACL权限简介 ①ACL是Access Control List的缩写,主要目的是在提供传统的owner,group,others的read,wr ...

  8. Java 7 Concurrency Cookbook 翻译 第一章 线程管理之四

    七.创建和运行一个后台线程 Java中有一种特别的线程叫做 deamon(后台) 线程.这类线程具有非常低的权限,并且只有在同一个程序中没有其他的正常线程在运行时才会运行.注意:当一个程序中只剩下后台 ...

  9. Java 7 Concurrency Cookbook 翻译 第一章 线程管理之三

    五.睡眠和唤醒一个线程 有时,你会想要在一段特定的时间后再去中断线程的运行.举个例子,程序中的一个线程每一分钟检查一次传感器的状态,剩余的时间,线程应该处于空闲的状态.在这段空闲时间里,线程不会使用计 ...

随机推荐

  1. 有关idea与mac的好用链接

    idea集成maven:https://www.cnblogs.com/daojiao/p/10270489.html idea集成tomcat:https://www.cnblogs.com/guo ...

  2. JS 中 判断数据类型 typeof详解

    typeof 可用来获取检测变量的数据类型 语法 typeof operand typeof(operand) 参数 operand   一个表示对象或原始值的表达式,其类型将被返回. 描述 下表总结 ...

  3. 0基础入门学习Python(第5章)

    列表,元组和字符串 5.1 列表:一个打了激素的数组 有时候可能需要将一些相互之间有关联的数据保存在一起,这个就叫数组.Python将其称为列表. 5.1.1 创建列表 >>> [1 ...

  4. Python继承、多继承、魔术方法

    继承和多继承的概念和使用 super的用法 __str__ __repr__ __call__ 多继承方法解析顺序和Mix-in开发模式 魔术方法原理和作用 继承 定义类的时候,在类名后面的括号里填继 ...

  5. No implementation for org.apache.maven.model.path.PathTranslator was bound.

    2019-12-17 10:19:19,884 [ 688476] INFO - #org.jetbrains.idea.maven - org.apache.maven.model.resoluti ...

  6. lua 12 table 的使用

    转自:http://www.runoob.com/lua/lua-tables.html table 是 Lua 的一种数据结构用来帮助我们创建不同的数据类型,如:数组.字典等. Lua table ...

  7. 《Verilog数字系统设计教程(第2版).pdf》

    Verilog数字系统设计教程(第2版).pdf https://github.com/shigh1005/pdf_book <Linux设备驱动开发详解:基于最新的Linux 4.0内核.pd ...

  8. Python socket & socket server

    socket 网络上的两个程序通过一个双向的通信连接实现数据的交换,这个连接的一端称为一个socket(套接字). 建立网络通信连接至少要一对socket.socket是对TCP/IP的封装 使用方法 ...

  9. 基于Nginx和openssl实现https

    [root@localhost ssl]# yum -y install openssl [root@localhost ssl]# mkdir /usr/local/nginx/conf/ssl/ ...

  10. Angular命令和基础操作

    本文档假设你已经熟悉了 HTML,CSS,JavaScript和来自最新标准的一些知识,比如类和模块. 一.Angular命令 命令语法: 大多数命令以及少量选项,会有别名.别名会显示在每个命令的语法 ...