asp.net mvc4 中自动生成的权限管理表的说明

2023-10-31 16:08

本文主要是介绍asp.net mvc4 中自动生成的权限管理表的说明,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

因为是转载文章 在此标明出处,以前有文章是转的没标明的请谅解,因为有些已经无法找到出处,或者与其它原因。

如有冒犯请联系本人,或删除,或标明出处。

因为好的文章,以前只想收藏,但连接有时候会失效,所以现在碰到好的直接转到自己这里。

原文 出处http://blog.csdn.net/hj458377603/article/details/9451603



1.asp.net mvc自带的权限表的创建是在InitializeSimpleMembershipAttribute.cs中实现的。


2.InitializeSimpleMembershipAttribute.cs

[csharp]  view plain copy print ?
  1. using System;  
  2. using System.Data.Entity;  
  3. using System.Data.Entity.Infrastructure;  
  4. using System.Threading;  
  5. using System.Web.Mvc;  
  6. using WebMatrix.WebData;  
  7. using FindU1.Models;  
  8.   
  9. namespace FindU1.Filters  
  10. {  
  11.     [AttributeUsage(AttributeTargets.Class | AttributeTargets.Method, AllowMultiple = false, Inherited = true)]  
  12.     public sealed class InitializeSimpleMembershipAttribute : ActionFilterAttribute  
  13.     {  
  14.         private static SimpleMembershipInitializer _initializer;  
  15.         private static object _initializerLock = new object();  
  16.         private static bool _isInitialized;  
  17.   
  18.         public override void OnActionExecuting(ActionExecutingContext filterContext)  
  19.         {  
  20.             // Ensure ASP.NET Simple Membership is initialized only once per app start  
  21.             LazyInitializer.EnsureInitialized(ref _initializer, ref _isInitialized, ref _initializerLock);  
  22.         }  
  23.   
  24.         private class SimpleMembershipInitializer  
  25.         {  
  26.             public SimpleMembershipInitializer()  
  27.             {  
  28.                 Database.SetInitializer<UserContext>(null);  
  29.   
  30.                 try  
  31.                 {  
  32.                     using (var context = new UserContext())  
  33.                     {  
  34.                         if (!context.Database.Exists())  
  35.                         {  
  36.                             // Create the SimpleMembership database without Entity Framework migration schema  
  37.                             ((IObjectContextAdapter)context).ObjectContext.CreateDatabase();  
  38.                         }  
  39.                     }  
  40.                     //Web.config中的配置,前四个参数分别是数据库连接ConnectionString,表名称,UserId,UserName(对应的数据库中的字段)  
  41.                     WebSecurity.InitializeDatabaseConnection("UserContext""Users""UserID""Email", autoCreateTables: true);  
  42.                 }  
  43.                 catch (Exception ex)  
  44.                 {  
  45.                     throw new InvalidOperationException("The ASP.NET Simple Membership database could not be initialized. For more information, please see http://go.microsoft.com/fwlink/?LinkId=256588", ex);  
  46.                 }  
  47.             }  
  48.         }  
  49.     }  
  50. }  

3.Web.Config中的数据库的配置

[html]  view plain copy print ?
  1. <connectionStrings>  
  2.     <add name="DefaultConnection" connectionString="Data Source=(LocalDb)\v11.0;Initial Catalog=aspnet-FindU1-20130720205848;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\aspnet-FindU1-20130720205848.mdf"  
  3.       providerName="System.Data.SqlClient" />  
  4.     <add name="UserContext" connectionString="Data Source=(localdb)\v11.0; Initial Catalog=UserContext-20130721150726; Integrated Security=True; MultipleActiveResultSets=True; AttachDbFilename=|DataDirectory|UserContext-20130721150726.mdf"  
  5.       providerName="System.Data.SqlClient" />  
  6.   </connectionStrings>  

4.出现 未启用角色管理器功能。错误



此时需要修改配置文件,加上

[html]  view plain copy print ?
  1. <compilation debug="true" targetFramework="4.5">  
  2.       <assemblies>  
  3.         <add assembly="WebMatrix.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>  
  4.         <add assembly="WebMatrix.WebData, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>  
  5.       </assemblies>  
  6. </compilation>  

这篇关于asp.net mvc4 中自动生成的权限管理表的说明的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/316524

相关文章

Linux中shell解析脚本的通配符、元字符、转义符说明

《Linux中shell解析脚本的通配符、元字符、转义符说明》:本文主要介绍shell通配符、元字符、转义符以及shell解析脚本的过程,通配符用于路径扩展,元字符用于多命令分割,转义符用于将特殊... 目录一、linux shell通配符(wildcard)二、shell元字符(特殊字符 Meta)三、s

Python脚本实现自动删除C盘临时文件夹

《Python脚本实现自动删除C盘临时文件夹》在日常使用电脑的过程中,临时文件夹往往会积累大量的无用数据,占用宝贵的磁盘空间,下面我们就来看看Python如何通过脚本实现自动删除C盘临时文件夹吧... 目录一、准备工作二、python脚本编写三、脚本解析四、运行脚本五、案例演示六、注意事项七、总结在日常使用

Java访问修饰符public、private、protected及默认访问权限详解

《Java访问修饰符public、private、protected及默认访问权限详解》:本文主要介绍Java访问修饰符public、private、protected及默认访问权限的相关资料,每... 目录前言1. public 访问修饰符特点:示例:适用场景:2. private 访问修饰符特点:示例:

MybatisGenerator文件生成不出对应文件的问题

《MybatisGenerator文件生成不出对应文件的问题》本文介绍了使用MybatisGenerator生成文件时遇到的问题及解决方法,主要步骤包括检查目标表是否存在、是否能连接到数据库、配置生成... 目录MyBATisGenerator 文件生成不出对应文件先在项目结构里引入“targetProje

java脚本使用不同版本jdk的说明介绍

《java脚本使用不同版本jdk的说明介绍》本文介绍了在Java中执行JavaScript脚本的几种方式,包括使用ScriptEngine、Nashorn和GraalVM,ScriptEngine适用... 目录Java脚本使用不同版本jdk的说明1.使用ScriptEngine执行javascript2.

Python使用qrcode库实现生成二维码的操作指南

《Python使用qrcode库实现生成二维码的操作指南》二维码是一种广泛使用的二维条码,因其高效的数据存储能力和易于扫描的特点,广泛应用于支付、身份验证、营销推广等领域,Pythonqrcode库是... 目录一、安装 python qrcode 库二、基本使用方法1. 生成简单二维码2. 生成带 Log

高效管理你的Linux系统: Debian操作系统常用命令指南

《高效管理你的Linux系统:Debian操作系统常用命令指南》在Debian操作系统中,了解和掌握常用命令对于提高工作效率和系统管理至关重要,本文将详细介绍Debian的常用命令,帮助读者更好地使... Debian是一个流行的linux发行版,它以其稳定性、强大的软件包管理和丰富的社区资源而闻名。在使用

SpringBoot项目启动后自动加载系统配置的多种实现方式

《SpringBoot项目启动后自动加载系统配置的多种实现方式》:本文主要介绍SpringBoot项目启动后自动加载系统配置的多种实现方式,并通过代码示例讲解的非常详细,对大家的学习或工作有一定的... 目录1. 使用 CommandLineRunner实现方式:2. 使用 ApplicationRunne

Python使用Pandas库将Excel数据叠加生成新DataFrame的操作指南

《Python使用Pandas库将Excel数据叠加生成新DataFrame的操作指南》在日常数据处理工作中,我们经常需要将不同Excel文档中的数据整合到一个新的DataFrame中,以便进行进一步... 目录一、准备工作二、读取Excel文件三、数据叠加四、处理重复数据(可选)五、保存新DataFram

SpringBoot生成和操作PDF的代码详解

《SpringBoot生成和操作PDF的代码详解》本文主要介绍了在SpringBoot项目下,通过代码和操作步骤,详细的介绍了如何操作PDF,希望可以帮助到准备通过JAVA操作PDF的你,项目框架用的... 目录本文简介PDF文件简介代码实现PDF操作基于PDF模板生成,并下载完全基于代码生成,并保存合并P