ASP.NET MVC+EF框架+EasyUI实现权限管理系列之开篇

ASP.NET MVC+EF框架+EasyUI实现权限管理系列之开篇

 前言:博客又有一段时间没有更新了,心里感觉这段时间空空的,好像什么都没有学下,所以就想写博客,所以就有了这个系列,这里当然也要感谢大家了,因这个项目我已经上传了,得到了很多网友的评价,也有好多人发邮件给我说这个框架容易出现问题,不能访问,这也是支持我写这个系列的动力,我将这个项目写成一个系列,可能要很长时间吧,但是我肯定会一直坚持,如果我哪里写的不好欢迎大家指出我们共同学习,而且我理解的也不是很透彻,所以我想在写这样一遍博客,后面如果有时间的话我会录制视频,当然,这个完全就是为了自己锻炼口才,大家莫怪呃,现在我们首先来对这个项目进行一个整体的概述

1. 项目的前世        

    (1)博客园过程

       在2012年12月13日我病刚好的时候写了这篇博客,当时我只是简单的讲整个项目截了几张图并且说明了一下,便将项目上传到了csdn,所以我们还是要自己捉摸代码,现在2013年3月22日我将这个项目写成系列,希望大家喜欢,当然这个项目也不是我自己独自写的,所以我还要感谢我的老师,但是如果women能学了那就是我们的东西了。

   (2)博客园地址:http://www.cnblogs.com/hanyinglong/archive/2012/12/13/mvc.html

   (3)下载地址:http://download.csdn.net/detail/hanyinglong/4884202

2.项目准备和技术工作           

   (1)下面我大致介绍一下我们项目中将要用到的软件和一些技术上的补充。

   (2):开发工具:Visual Studio 2012

   (3):数据库:SQL Server 2012

   (4):代码管理工具使用SVN,这个我的项目中我不准备用了,但是我会准备时间写篇博客来了解一下它的使用。

   (5):ASP.NET MVC的处理流程,也就是熟悉一下MVC框架。

   (6):EasyUI的使用,这个技术又Demo,大家可以下载看一下。

   (7):Entity FrameWork框架的使用。

   (8):面向对象的理解,为什么说这个呢,因为这个项目我是按照面向对象(这么说也不对),大家可以看着理解一下。

   (9):后面会用到什么技术,这个暂时没想到,等用到了我会补充在这里,如果大家有什么好的建议的话也可以说一下。

3.为什么使用MVC而不是用WebForm呢?        

  (1)为什么使用MVC而不是用WebForm呢?这个是我临时想的,因为我就是想说明一下WebForm和MVC的优缺点,来可以使大家能够更好地理解MVC和WebForm,而不像某些人说MVC会替代WebForm,我个人认为这个可能性很小,因为各有各的好处,看在哪里使用吧,下面我就简单介绍下WebForm和MVC的优缺点。

   (2)WebForm介绍

  1)优点

       1):支持事件模型,取决于微软提供了丰富的服务器端组建,WebForm可以快速的搭建Web应用。

       2):使用非常方便,入门也很容易,但是要了解底层还是要付出很大的努力的,这就是我们.NET程序员被称为只会拖控件的原因。

       3):微软提供了很大的一部分控件,也有很多公司开发出来了很多的控件来供我们程序员使用。

  2)缺点

       1):封装性特强,很多从底层封装出来的东西让我们初学者不是非常明白。

       2):入门非常容易,但是如果不研究底层的话提升非常困难,所以我们一定有时间的话要研究底层。

       3):复杂的生命周期模型学习起来并不是非常的容易,好多事件。

       4):控制不是非常的灵活,服务器控件的控制非常不容易。

       5):ViewState处理,在请求和响应之间来回的传递,当我们使用WebForm开发完网站之后,我们可以在浏览器中右键查看源代码会看到很多的ViewState,非常浪费资源和浪费服务器宽带。

       6):异步请求的时候每个请求后台必须都有一个一般处理程序或者aspx页面对应。

  (3)MVC

       1)优点

       1):MVC很容易的将复杂的应用分成M,V,C三个组件模型相对应,通过Model,View,Controler有效的简化了复杂的架构,体现了非常好的隔离原则。

       2):因为没有使用server-based forms(事件响应模型),所以能够使我们程序员控制起来更加的灵活,页面更加的干净。

       3):可以控制自定义的URL,也就是MVC中的路由机制,这可以说是MVC的一个亮点,再也不用我们在WebForm时代的配置静态页的过程了。而且对于SEO友好。能够更加的利用网络爬虫。

       4):强类型的View实现,更加的安全,更加的可靠,更加的高效。

       5):让Web开发者(程序员)可以更加的专注某一个层的开发,有利于我们分工配合使用大型架构的开发。

        6):MVC下面对异步的处理更加有一个很好的支持,一个控制其下面可以有很多action,而每个action对应的可以有不同的请求。

        7):MVC的校验非常的好,我们只需要给每个方法打入节点就可以实现不能为空等校验。

              [requred]

              Public string Name{get;set;}

       8):表单提交的时候,提供了自动装配的功能。

       9):微软提供了很多全局的过滤器(身份校验过滤器,异常过滤器,Action过滤器,视图结果过滤器),这些都是MVC带来的新功能,使我们的开发能够更加的快速开发。

4.项目目录                                 

   (1)我想在这个页面做一个目录,来方便我们的记录,当我发表一篇博客的时候,我就会修改这里,来方便大家的观看,也是为了我以后能够方便的看。

   (2)目录结构如下:

   2) ASP.NET MVC+EF框架+EasyUI实现权限管理系列之开篇

   3) ASP.NET MVC+EF框架+EasyUI实现权限管系列(1)

   4) ASP.NET MVC+EF框架+EasyUI实现权限管系列(2)

      相信自己,你就是下一个奇迹!

作者:韩迎龙
出处:http://www.cnblogs.com/hanyinglong
MVC/.NET群:159227188
本页版权归作者和博客园所有,欢迎转载,但未经作者同意必须保留此段声明, 且在文章页面明显位置给出原文链接,否则保留追究法律责任的权利

 

MVC4 Simplemembership后台权限管理系统(附源码下载,链接刚才出问题了,可以下载了)

MVC4使用Simplemembership进行权限管理,天屹写了一个后台权限管理系统和大家分享一下。
本系统通过对MVC4 Simplemembership默认数据库进行扩展实现了后台管理用户,角色和权限。通过角色的权限配置实现对前台Controller和Action的权限管理。文章会提供系统的源代码下载,下面对系统的配置和使用做一些说明,请耐心阅读以下下面的说明。

系统源码下载


第一步:修改Web.config文件。
这个文件中只需要TYStudioUsersConnectionString中的用户名和密码,修改为你本地具有创建数据库的权限的用户名和密码。修改完成运行程序会系统会自动创建扩展后的Membership数据库。

第二步:建立系统管理员角色和用户。
考虑到手动添加系统管理员角色和用户比较麻烦,初始的程序都是可以匿名访问的,这时候你需要运行系统添加一个系统管理员角色,并添加一个用户赋给系统管理员权限。再添加完系统管理员角色和用户之后你需要修改一下Controllers下面的各个Controller,注释掉[AllowAnonymous]并把//[Authorize(Roles = "系统管理员")]注释打开。编译重新运行程序,这时后台管理系统只能允许系统管理员角色的用户登陆了。

第三步:测试产品模块(ProductController)
Controller下有一个ProductController是用来测试我们的权限管理是否成功的起作用了,同时也是对前台Controller和Action进行全线控制的方法。

这里使用[TYStudioAuthorize("查询产品")]方式对Action进行访问控制。

所有关于Membership的类都在Models/Membership文件夹下面。将来你需要把这些class移植到你的公共project中去,这样就可以使用MVC4 Simplemembership对你的前台进行权限控制了。

最后当你明白ProductController控制访问权限的方法之后,ok,现在可以把这个权限管理系统用于你的前台网站的权限管理了。

如果有什么问题,不要顾虑尽管留下你的问题,我们一起解决掉他们。

推荐文章:

Simplemembership实现用户权限管理-初步认识

Simplemembership实现用户权限管理-扩展数据库

MVC4 Simplemembership实现用户权限管理-权限控制

 
 
 
原文地址:https://www.cnblogs.com/Leo_wl/p/2979449.html