之前我们看到了新生成的项目中跟identity有关的有四个文件,这些文件是基础功能,并未开启identity的全部功能.现在我们先启用角色功能. 1.在App_Start文件夹中的IdentityConfig.cs中添加角色控制器. 在namespace xxx内(即最后一个“}”前面)添加 角色控制类 代码如下: //配置此应用程序中使用的应用程序角色管理器.RoleManager 在 ASP.NET Identity 中定义,并由此应用程序使用. public class Applicati…
开发环境:vs2015 UP3  or  vs2017RC  项目环境:asp.net 4.6.1   identity版本为:asp.net identity 2.2.1 1.创建项目. 没什么好说的,你都没有第二个选择.只是别忘了选下身份验证类型.第二个:个人用户账户. 2.了解identity的结构. 1·项目默认会在根目录上创建一个Startup.cs,双击打开类文件后,在第四行上你能看到“[assembly: OwinStartupAttribute(typeof(xxxx.Start…
一.添加管理链接 在View/Shared/_layout.cshtml,在页面导航上(28行)添加如下代码: @*通过身份验证并确认用户属于Admin角色显示管理菜单*@ @if (Request.IsAuthenticated && User.IsInRole("Admin")) { <li>@Html.ActionLink("角色管理", "Index", "RolesAdmin")</…
创建角色管理相关视图 1.添加视图 打开RolesAdminController.cs   将鼠标移动到public ActionResult Index()上  右键>添加视图   系统会弹出对话框  什么也不用改 直接“确定”. 2.在创建的视图上添加数据模型 在第一行添加 @model IEnumerable<Microsoft.AspNet.Identity.EntityFramework.IdentityRole> 3.建立Index页面视图模板,代码完成后如下: @model…
使用用户管理器之角色管理 一.建立模型,这里我们其实在之前的技巧(五)已经建好了. 二.建立控制器RolesAdminController 1.在controllers文件夹上点右键>添加>控制器, 我这里选的是“MVC5 控制器-空”,名称设置为:RolesAdminController.cs. 2.添加操作权限.在空间命名下第一个{下面(9行)添加[Authorize(Roles = "Admin")]用以此控制器操作只有admin角色组有权限访问.如果你选择了之前的可…
创建用户管理相关视图 1.添加视图 打开UsersAdminController.cs   将鼠标移动到public ActionResult Index()上  右键>添加视图   系统会弹出对话框  什么也不用改 直接“添加”. 2.在创建的视图上添加数据模型 在第一行添加 @model IEnumerable<xxxx(项目名).Models .ApplicationUser>. 3.建立Index页面视图模板,代码完成后如下: @model IEnumerable<xxxx…
使用用户管理器之用户管理 一.建立模型 1.在Models文件夹上点右键 >添加>类     类的名称自定,我用AdminViewModels命名的. 2.更改模板自建的AdminViewModels类为RoleViewModel,并添加EditUserViewModel类,代码完成如下: public class RoleViewModel { public string Id { get; set; } [Required(AllowEmptyStrings = false)] [Disp…
使用用户管理器之用户注册 用户管理的基本功能模块中已经做好了,我们现在做一些调整. 1.修改用户名注册规则. 上一篇中可选操作已经详解了这里把基本的设置简介下. 打开App_Start/identityConfig.cs ,在public static ApplicationUserManager Create(IdentityFactoryOptions<ApplicationUserManager> options, IOwinContext context) (43行)方法内找manag…
按照ASP.NET MVC Identity建立了一個用戶權限管理模塊,由于還要加自己已有的數據庫,所以建立了一個實體模型,建立了之后,發現登錄不了: 一直顯示“Login in failed for user 'sa',後來發現不是用戶名和密碼不對,而是連接字符串的問題,按屬性里複製的連接字符串沒有包括Initial Catalog=MISWeb, 所以有時正常,有時提示登錄錯誤. 多個連接字符串ConnectionString可以同時存在.包括同一服務器,同一用戶名,同一數據庫.…
1.ASP.NET MVC 3 如何去除默认验证 这个默认验证是在web.config配置文件中设置的    <add key="ClientValidationEnabled" value="true"/>设置为false就行了,    这个是去掉所有model的默认验证,然后你可以在model中加上自己的验证,这样哪些属性需要验证,哪些不需要 就看你自己了 示例代码: publicclass Movie { publicint ID { get; s…
using Microsoft.AspNet.Identity; public ActionResult AddRole(String name){ using (var roleManager = new RoleManager<IdentityRole>(new RoleStore<IdentityRole>(new IdentityDbContext()))) { if (!roleManager.RoleExists(name)) { roleManager.Create(…
之前在网上看到的一篇后来找不到了,现在自己记录一下. 1.在web.config中添加一个数据库连接. <add name="dataContext" connectionString="Data Source=.;Initial Catalog=MVC1;User ID=XXX;password=XXX" providerName="System.Data.SqlClient" /> 2.打开IdentityModels.cs文件,…
在发现这个小技巧之前,我经常被某些问题困扰,我们以博客园为例 1:是分类名称 2:是分类url 3:点击分类,进入的页面,要显示分类的名称 4:点击分类,进入的页面,要用分类相关参数 在日常web的开发中,经常遇到要在页面上显示一个分类,然后这个分类的链接要包含这个分类的id等参数(例如为搜索引擎友好要包含名称的汉语拼音),然后点击这个分类的页面要显示这个分类的各种信息例如分类名称,分类读取搜索接口的地址和参数等. 尤其是某些变态的分类,一个条目和一个条目读取相关信息的方式还不一样,还可能很耗时…
这篇写一写如何使用Spring.net来解耦各个项目 1. 在接口层添加IStudentBLL文件,里面有GetStudent和GetAllStudents两个方法:然后在StudentBLL类里实现这两个方法.此外还要在StudentManageSystem.ViewModel层添加StudentViewModel. 注意,此处使用了属性StudentRepository,后期会用Spring.net将些属性注入…
本文将介绍表现层及ASP.NET MVC的一些要点,特别是ASP.NET MVC的一些抽象和封装技巧,如果你对MVC还不了解,可以参考<ASP.NET MVC4 高级编程>,作者Jon Galloway等,这本书由ASP.NET MVC团队成员编写,相当不错. 表现层的职责 表现层的职责是展示和收集数据,将领域层的数据和逻辑展示出来,并收集用户输入的相关信息. 搞清楚表现层的职责以后,你就应该清楚,表现层不是你应该编写业务逻辑的地方,这也是分层架构的核心. 如果要展示一个计算值,不应该在表现层…
ASP.NET MVC 中 WebGrid 的 6 个重要技巧 https://www.oschina.net/translate/webgrid-in-asp-net-mvc-important-tips 介绍 当一个 Webform 开发者转做 MVC 开发的时候, 他会发现, 许多自己喜欢的东东不见了. 没有代码隐藏模型(behind code), 没有 view state, 没有页面生命周期(page life cycle), 没有服务端控件(server control). 你可以看…
用4篇博客来搭一个MVC的框架,可能对初学者会有一些帮助,大家共勉吧.我觉得对于中小型项目,这个框架可能还是有一定的用处的,希望能够帮助到一些人. Asp.net MVC + EF + Spring.Net 项目实践(一)添加项目结构 Asp.net MVC + EF + Spring.Net 项目实践(二)  通过数据库表生成Entity Asp.net MVC + EF + Spring.Net 项目实践(三)  调整Entity结构 Asp.net MVC + EF + Spring.Ne…
表现层及ASP.NET MVC介绍(一) 本文将介绍表现层及ASP.NET MVC的一些要点,特别是ASP.NET MVC的一些抽象和封装技巧,如果你对MVC还不了解,可以参考<ASP.NET MVC4 高级编程>,作者Jon Galloway等,这本书由ASP.NET MVC团队成员编写,相当不错. 表现层的职责 表现层的职责是展示和收集数据,将领域层的数据和逻辑展示出来,并收集用户输入的相关信息. 搞清楚表现层的职责以后,你就应该清楚,表现层不是你应该编写业务逻辑的地方,这也是分层架构的核…
搭建你的Spring.Net+Nhibernate+Asp.Net Mvc 框架 (一)搭建你的环境 使用这套框架不是很长时间.但也基本应用了几个项目中了.在此和大家分享一下我是怎样一步一步搭建此框架的.并为初学者提供一个简单的示范.欢迎共同讨论技术问题.[本人纯属菜鸟!不足之处多谅解!] 第一步: 首先要看一下我项目中三层与mvc以及Spring.Net,Nhibernate处在的哪一层.看下面一幅图: 先做为一个大体的思路和了解. 第二步: 了解Spring.Net做什么用?http://w…
对于Web应用来说,它的界面是由浏览器根据HTML代码及其引用的相关资源进行渲染后展示给用户的结果,换句话说Web应用的界面呈现工作是由浏览器完成的,Web应用的原理是通过Http协议从服务器上获取到对应的Html代码以及相关资源,使得浏览器能够完成正确的呈现工作. ASP.NET MVC作为一个Web应用构建框架View承担了UI显示的功能,在开发过程中View以Action的名称命名,当用户的请求被路由到某一Action方法时,ASP.NET MVC将会根据Action的名称来获取到对应的V…
ASP.NET没有魔法——ASP.NET MVC Razor与View渲染   对于Web应用来说,它的界面是由浏览器根据HTML代码及其引用的相关资源进行渲染后展示给用户的结果,换句话说Web应用的界面呈现工作是由浏览器完成的,Web应用的原理是通过Http协议从服务器上获取到对应的Html代码以及相关资源,使得浏览器能够完成正确的呈现工作. ASP.NET MVC作为一个Web应用构建框架View承担了UI显示的功能,在开发过程中View以Action的名称命名,当用户的请求被路由到某一Ac…
[ASP.NET MVC] ASP.NET Identity登入技术应用 情景 ASP.NET Identity是微软所贡献的开源项目,用来提供ASP.NET的验证.授权等等机制.在ASP.NET Identity里除了提供最基础的:用户注册.密码重设.密码验证等等基础功能之外,也提供了进阶的:Cookie登入.Facebook登入.Google登入等等进阶功能.套用这些功能模块,让开发人员可以快速的在ASP.NET站台上,提供验证.授权等等机制. 但是在企业中,开发人员常常会遇到一种开发情景就…
[ASP.NET MVC] ASP.NET Identity登入技术剖析 前言 ASP.NET Identity是微软所贡献的开源项目,用来提供ASP.NET的验证.授权等等机制.本篇文章介绍ASP.NET Identity在执行登入功能时,与浏览器.还有第三方验证服务之间的运作流程.主要为自己留个纪录,也希望能帮助到有需要的开发人员.(本篇内容大幅度简化了ASP.NET Identity的运作细节,用以传达登入功能的运作概念.实际ASP.NET Identity在运作的时候,比本篇说明的复杂很…
在这篇文章中,我将继续ASP.NET Identity 之旅,这也是ASP.NET Identity 三部曲的最后一篇.在本文中,将为大家介绍ASP.NET Identity 的高级功能,它支持声明式并且还可以灵活的与ASP.NET MVC 授权结合使用,同时,它还支持使用第三方来实现身份验证. 关于ASP.NET Identity 的基础知识,请参考如下文章: ASP.NET MVC 随想录——开始使用ASP.NET Identity,初级篇 ASP.NET MVC 随想录——探索ASP.NE…
在前一篇文章中,我介绍了ASP.NET Identity 基本API的运用并创建了若干用户账号.那么在本篇文章中,我将继续ASP.NET Identity 之旅,向您展示如何运用ASP.NET Identity 进行身份验证(Authentication)以及联合ASP.NET MVC 基于角色的授权(Role-Based Authorization). 本文的示例,你可以在此下载和预览: 点此进行预览 点此下载示例代码 探索身份验证与授权 在这一小节中,我将阐述和证明ASP.NET 身份验证和…
在之前的文章中,我为大家介绍了OWIN和Katana,有了对它们的基本了解后,才能更好的去学习ASP.NET Identity,因为它已经对OWIN 有了良好的集成. 在这篇文章中,我主要关注ASP.NET Identity的建立和使用,包括基础类的搭建和用户管理功能的实现—— 点此进行预览 点此下载示例代码 在后续文章中,我将探索它更高级的用法,比如身份验证并联合ASP.NET MVC 进行授权.使用第三方登录.声明式认证等. ASP.NET Identity 前世今生 ASP.NET Mem…
[ASP.NET MVC] 使用CLK.AspNet.Identity提供依权限显示选单项目的功能 CLK.AspNet.Identity CLK.AspNet.Identity是一个基于ASP.NET Identity扩展设计的验证授权模块,这个模块提供以角色为基础的访问控制(Role-based access control, RBAC),将系统授权拆解为User(使用者).Role(角色).Permission(权限).让开发人员可以在系统内,定义用户属于哪个角色.哪个角色拥有那些权限.权…
[ASP.NET MVC] 使用CLK.AspNet.Identity提供以角色为基础的访问控制(RBAC) 程序代码下载 程序代码下载:点此下载 前言 ASP.NET Identity是微软所贡献的开源项目,用来提供ASP.NET的验证.授权机制.而在ASP.NET Identity的功能模块中:是采用Claims-Based验证来提供验证机制.并且实作Role-Based授权来提供授权机制.开发人员在系统内套用ASP.NET Identity后,就可以像下列范例一样定义用户属于哪个角色.哪个…
[ASP.NET MVC] ASP.NET Identity学习笔记 - 原始码下载.ID型别差异 原始码下载 ASP.NET Identity是微软所贡献的开源项目,用来提供ASP.NET的验证.授权等等机制.原始码的位置如下: ASP.NET Identity 2.x https://aspnetidentity.codeplex.com/SourceControl/latest#Readme.markdown ASP.NET Identity 3.x [https://aspnetiden…
ASP.NET MVC 随想录——开始使用ASP.NET Identity,初级篇   阅读目录 ASP.NET Identity 前世今生 建立 ASP.NET Identity 使用ASP.NET Identity ASP.NET Identity 其他API介绍 小节 在之前的文章中,我为大家介绍了OWIN和Katana,有了对它们的基本了解后,才能更好的去学习ASP.NET Identity,因为它已经对OWIN 有了良好的集成. 在这篇文章中,我主要关注ASP.NET Identity…