Asp.net Mvc身份验证
2024-10-18 19:29:48
1、安装组件 Microsoft.AspNet.Identity.Core,身份认证核心组件
安装Microsoft.AspNet.Identity.EntityFramework,EF实现身份认证
安装Microsoft.AspNet.Identity.OWIN,身份认证的OWIN插件,用于替代Froms验证
安装Microsoft.Owin.Host.SystemWeb 3.1.0,可以让OWIN运行在IIS上
2、添加Identity EF 上下文,并配置好数据库连接字符串
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using Microsoft.AspNet.Identity.EntityFramework; namespace IdentityTest.Models
{
public class AppIdentityDbContext : IdentityDbContext<IdentityUser>
{
public AppIdentityDbContext() : base("DefaultConnection") { }
}
}
3、使用enable-migrations在程序包控制台进行开启迁移,使用update-database更新数据库,数据库生成了相应的五张表
4、添加注册功能,为了方便调式使用GET方法
[HttpGet]
public ActionResult Register(string UserName, string Password)
{
var user = new IdentityUser
{
UserName = UserName
};
using (var userManager = new UserManager<IdentityUser, string>
(new UserStore<IdentityUser>(new AppIdentityDbContext())))
{
var result = userManager.Create(user, Password);
if (result.Succeeded)
{
return Json(new { IsSuc = true, Message = "注册成功" },JsonRequestBehavior.AllowGet);
}
else
{
return Json(new { IsSuc = false, Message = result.Errors.ToString() },JsonRequestBehavior.AllowGet);
}
} }
启动运用程序发现报错,在appSettings里面添加
<add key="owin:AutomaticAppStartup" value="false" />
重新运行 在浏览器输入http://localhost:58009/Home/Register?UserName=admin&Password=123456 显示注册成功
查询数据库,[dbo].[AspNetUsers]表新增了一条刚才的注册用户
最新文章
- Cosmos —— Big Data at Microsoft
- mpi4py实践
- LeetCode Island Perimeter
- JavaWeb用Jdbc操作MySql数据库(一)
- 正则表达式python和C++对比
- JS 禁用和重新启用a标签的点击事件
- 操作SQLite数据库
- java工程师分享:我是如何自学成才的?
- RabbitMQ+PHP 消息队列环境配置
- 阿里巴巴SUI Mobile的使用
- selenium 学习笔记 ---新手学习记录(5) 问题总结(java)
- (Problem 72)Counting fractions
- Cordova 使用经验
- 如果你使用上述这段12行的JavaScript代码,就可以能让firefox、chrome、safari浏览器崩溃,而且还能让iphone重启,安卓手机闪退!
- [学习OpenCV攻略][001][Ubuntu安装及配置]
- Python实战171202元组访问
- [Swift]LeetCode421. 数组中两个数的最大异或值 | Maximum XOR of Two Numbers in an Array
- [matlab] 18.图与网络 (转载)
- CSS3 Transform的perspective属性
- Android-如何显示版本号并制作3秒跳转页
热门文章
- 【sping揭秘】19、关于spring中jdbctemplate中的DataSource怎么来呢
- odoo开发笔记 -- 字段增加唯一约束
- Pthon常用模块之requests,urllib和re
- Gradle 大杂烩
- unity5.5 ugui使用美术字
- mysql创建表时,设置timestamp DEFAULT NULL报错1067 - Invalid default value for &#39;updated_at&#39;
- nginx介绍(六) - 通过反向代理实现跨域访问
- C++中的字符串可以这样换行写
- MySQL 事务机制
- 【手记】解决“未能创建 SSL/TLS 安全通道”异常