# identity数据库
## 创建空数据库 交给ef管理

### 添加asp.net identity包
```
Install-Package Microsoft.AspNet.Identity.EntityFramework
Install-Package Microsoft.AspNet.Identity.OWIN
Install-Package Microsoft.Owin.Host.SystemWeb
```
## 创建owin startup类

在app_start目录创建新类 IdentityConfig

## 在web.config中添加配置信息
数据库连接字符串。。。。
---------------------------

## owin配置信息

```

```

## 创建User类 => 代表用户
继承自
`Microsoft.AspNet.Identity.EntityFramework`命名空间下的`IdentityUser`

`IdentityUser`提供了基本的用户信息,如`email passwordhash Username phonenumber roles`等
我们也可以在其派生类中添加额外的信息

```
class AppUser:IdentitUser
```

## 创建Database Context类 =>使用ef code first开管理数据库
ASP.Net Identity将使用Code First来创建和管理数据库架构
Database Context必须继承自IdentityDbContext,而且T为User类(或者其派生来 这里为AppUser)

```
class AppIdentityDbContext:IdentityDbContext
{
public AppIdentityDbContext()
:base("连接字符串key")
{

}

//静态函数只执行一次,这里使用下面创建的初始化类来初始化数据库
static AppIdentityDbContext()
{
Database.SetInitializer(new IdentityDbInit()):
}

//创建Database Context实例 每次调用返回一个实例
public static AppIdentityDbContext Create()
{
return new AppOdentityDbContext();
}
}
```

### 同时可以创建数据库初始化类 这里命名为IdentityDbInit (继承自DropCreateDatabaseIfModelChanges这里的泛型T指的是需要初始化的DbContext)

```
class IdentityDbInit:DropCreateDatabaseIfModelChanges
{
protected override void Seed(AppIdentityDbContext context)
{
PerformInitialSetup(context)
base.Seed(context)
}
private void PerformInitialSetup(AppIdentityDbContext context)
{
//进行初始化操作

}
}
```

## 创建User Manger类
User Manager类作为ASP.NET Identity中最为重要的类之一,用来管理User,它提供了创建和操作用户的一些基本方法,并且全面支持C#异步编程,
值得注意的是,它并不通过Entity Framework来直接操作用户,而是间接的调用UserStore来实现。
UserStore 是Entity Framework类实现了IUserStore接口并且实现了定义在UserManger中操作用户的方法

asp.net identity的学习记录的更多相关文章

  1. ASP.NET Identity & OWIN 学习资料

    有关 ASP.NET Identity 的更多细节: http://www.asp.net/identity 从一个空项目中添加 ASP.NET Identity 和 OWIN 支持: http:// ...

  2. ASP.Net Mvc 5 学习记录2015-9-9

    我之前一直都是学习和开发都采用ASP.Net WebForm,对MVC的一直都是一知半解,最初以为ASP.Net WebForm的N层架构就是MVC.其实N层架构设计思想是"高内聚,低耦合& ...

  3. asp.net报表结构学习记录

    当一份web报表项目压缩包躺在我的文件夹里时,我是完全懵的.作为一个学习了一个月java的asp.net小白,以前从来没有接触过这方面,我完全不知道从何入手. 手里也有asp.net开发学习视频,但都 ...

  4. asp.net Code CSRedis学习记录

    1.安装Redis for windows 安装地址 https://github.com/MicrosoftArchive/redis/releases Redis 是完全开源免费的,遵守BSD协议 ...

  5. ASP.NET Identity 系列笔记目录

    编写目的 混迹博客园已经有一段时间了,一直都是在学习各路大神的文章,自己却没有做出什么贡献,所以觉得应该写一点点内容和大家一起分享.但是本人实在才疏学浅,有心无力啊!正好最近在学习 Microsoft ...

  6. [ASP.NET MVC] ASP.NET Identity学习笔记 - 原始码下载、ID型别差异

    [ASP.NET MVC] ASP.NET Identity学习笔记 - 原始码下载.ID型别差异 原始码下载 ASP.NET Identity是微软所贡献的开源项目,用来提供ASP.NET的验证.授 ...

  7. ASP.NETCore学习记录(一)

    ASP.NETCore学习记录(一) asp.net core介绍  Startup.cs  ConfigureServices  Configure  0. ASP.NETCore 介绍 ASP.N ...

  8. CQRS学习——集成ASP.NET Identity[其五]

    [其实和Cqrs没啥关系] 缘由 其实没啥原因,只是觉得以前写了不知多少遍的用户登录复用性太差,实现的功能也不多. 依赖的Nuget包 简单登陆 就简单登陆而言,只需要实现如下接口/抽象类: Stor ...

  9. 学习asp.net Identity 心得体会(连接oracle)

    asp.net Identity具体功能暂不在此细说,下面主要介绍几点连接oracle注意的事项, 1.首先下载连接oracle驱动Oracle.ManagedDataAccess.dll和Oracl ...

随机推荐

  1. 笔记-Markdown常用语法

    其实应该很早就已经接触到了Markdown这种简洁却彪悍的标记语言,比如Github的README.md,只不过被不走心的我当作txt文档来用了.直到前个看到一位大神的读书列表清单,觉得很新奇,就有意 ...

  2. spring的线程安全

    Spring作为一个IOC/DI容器,帮助我们管理了许许多多的“bean”.但其实,Spring并没有保证这些对象的线程安全,需要由开发者自己编写解决线程安全问题的代码.Spring对每个bean提供 ...

  3. 【Head First Servlets and JSP】笔记 25:JSTL 参考

    <%@ page contentType="text/html;charset=UTF-8" language="java" %> <%@ t ...

  4. navicate中文破解版,注册码

    https://pan.baidu.com/s/1nvIIOad 用户名随意,有下在面的KEY就可以了NAVN-LNXG-XHHX-5NOO

  5. cisco笔记

    交换机 show cdp neighbors 显示邻居信息 路由 show ip interface brief 显示接口ip

  6. Spring_使用外部属性文件

    beans-properties.xml <?xml version="1.0" encoding="UTF-8"?><beans xmlns ...

  7. Mysql 基本用法

    Java中两种常用的数据库: MYSQL     Oracle MYSQL  :开源免费的数据库,小型的数据库.由瑞典MySQL AB 公司开发,适合中小企业使用,由C语言和C++编写的.已经被Ora ...

  8. mysql查询结果乱码

    1.查询数据库结果乱码 mysql,; +-----------+-------------------------------------------------------------+ | do ...

  9. how to get a controller instance in another controller

    https://stackoverflow.com/questions/16870413/how-to-call-another-controller-action-from-a-controller ...

  10. 【bzoj3170】[Tjoi2013]松鼠聚会(数学题)

    题目传送门:https://www.lydsy.com/JudgeOnline/problem.php?id=3170 这道题要在n个点中求一个点使其他点到该点的切比雪夫距离最小. 有个结论:$ (x ...