Asp.net core 笔记
2017-07-19 11:03
330 查看
一、Getting Start
英文文档Getting Start。
中文文档
翻译文档。
博客园提供。
二、配置
10分钟入门配置Startup.cs:配置服务、路由策略、依赖注入、权限认证等...
三、敏感数据存储
英文中文
四、EntityFrameWork
EF Code First切换Sqllite数据库
(1). 添加"Microsoft.EntityFrameworkCore.Sqlite"引用。
(2). 修改Startup.cs中的"ConfigServices"方法 。
var connection = "Filename=./efcoredemo.db"; services.AddDbContext<DataContext>(options => options.UseSqlite(connection));
五、其他
Views/Shared/_Layout.cshtml:共享的布局。@RenderBody()是个占位符。具体试图会填充该部分内容。Controller和View进行数据传输,可以使用ViewData字典、ViewBag或者强类型的(Model)等...
IOC:IOC
依赖注入:DI
六、Web Api
Getting Start七、Asp.net Identidy
1、Getting Start
Asp.net Identity2、术语解释
SignInManager: 主要处理注册登录相关业务逻辑。UserManager:处理用户相关添加删除,修改密码,添加删除角色等。
RoleManager:角色相关添加删除更新等。
Claims:证件单元。
ClaimsIdentity:身份证。
ClaimsPrincipal:证件当事人。
Asp.net Identity介绍。
3、 Authentication(认证)
AuthenticationManager:认证管理员。AuthenticationScheme:验证方案名称。
IAuthenticationHandler:以后如果需要重写认证相关的东西,实现IAuthenticationHandler就可以了。
4、 Authorization(授权)
github上很好的入门例子,有步骤讲解。ASP.NET Core Authorization Lab。
5、 账号验证和密码找回
Sample。(1). 修改ConfigureServices方法,启用邮箱验证。
services.AddIdentity<ApplicationUser, IdentityRole>(config => { config.SignIn.RequireConfirmedEmail = true; }) .AddEntityFrameworkStores<ApplicationDbContext>() .AddDefaultTokenProviders();
(2). 添加"MailKit"引用,使用"MailKit"发送邮件。
MailKit。
(3). 启用账号验证。
在
AccountController.cs的
[HttpPost]Register方法中取消注释的代码启用账号验证。
(4). 启用密码找回。
在
AccountController.cs的
ForgotPassword方法中取消注释的代码。
(5). 取消
Views/Account/ForgotPassword.cshtml中的注释。
(6). 避免用户未验证邮箱就登陆。
修改
AccountController.cs中的
[HttpPost]Login方法,添加如下代码。
// Require the user to have a confirmed email before they can log on. var user = await _userManager.FindByEmailAsync(model.Email); if (user != null) { if (!await _userManager.IsEmailConfirmedAsync(user)) { ModelState.AddModelError(string.Empty, "You must have a confirmed email to log in."); return View(model); } }
6、 JWT Token Authenticating
Json Web Token 认证入门。注意:使用的时候在Postman中注入token是"Bearer balabalabala..."
Sample
aspnet-core-webapi-jwt-auth-example。
八、Send Email
.Net Frameworkpublic static class MailHelper { public static void SendEmail() { //声明一个Mail对象 MailMessage mymail = new MailMessage(); //发件人地址 //如是自己,在此输入自己的邮箱 mymail.From = new MailAddress("18211019093@163.com"); //收件人地址 mymail.To.Add(new MailAddress("18211019093@163.com")); //邮件主题 mymail.Subject = "Subject"; //邮件标题编码 mymail.SubjectEncoding = System.Text.Encoding.UTF8; //发送邮件的内容 mymail.Body = "这是一个测试邮件"; //邮件内容编码 mymail.BodyEncoding = System.Text.Encoding.UTF8; //添加附件 //Attachment myfiles = new Attachment(tb_Attachment.PostedFile.FileName); //mymail.Attachments.Add(myfiles); //抄送到其他邮箱 //mymail.CC.Add(new MailAddress(tb_cc.Text)); //是否是HTML邮件 //mymail.IsBodyHtml = true; //邮件优先级 mymail.Priority = MailPriority.High; //创建一个邮件服务器类 SmtpClient myclient = new SmtpClient(); myclient.Host = "SMTP.163.com"; //SMTP服务端口 myclient.Port = 25; //验证登录 myclient.Credentials = new NetworkCredential("userName", "授权码");//"@"输入有效的邮件名, "*"输入有效的密码 myclient.Send(mymail); } }
Asp.net Core
使用第三方服务:MailKit。
MailKit。
相关文章推荐
- Asp.Net Core SignalR 与微信小程序交互笔记
- ASP.NET Core 源码阅读笔记(2) ---Microsoft.Extensions.DependencyInjection生命周期管理
- ASP.NET Core 2.0系列学习笔记-启动类Startup
- Asp.net core 2.0.1 Razor 的使用学习笔记(三)
- Asp.net core 学习笔记 ( HttpClient )
- Centos7 编译安装 Nginx Mariadb Asp.net Core2 (实测 笔记 Centos 7.3 + Openssl 1.1.0f + Mariadb 10.2.7 + Nginx 1.12.1 + Asp.net. Core 2 )
- ASP.NET Core 2 学习笔记(三)中间件
- [译]【NetCore学习笔记之Anchor TagHelper】ASP.NET Core MVC Anchor Tag Helper
- sql server 关于表中只增标识问题 C# 实现自动化打开和关闭可执行文件(或 关闭停止与系统交互的可执行文件) ajaxfileupload插件上传图片功能,用MVC和aspx做后台各写了一个案例 将小写阿拉伯数字转换成大写的汉字, C# WinForm 中英文实现, 国际化实现的简单方法 ASP.NET Core 2 学习笔记(六)ASP.NET Core 2 学习笔记(三)
- Asp.net core 2.0.1 Razor 的使用学习笔记(一)
- ASP.NET Core 2.0系列学习笔记-ORM框架之Dapper
- ASP.NET Core 2 学习笔记(五)静态文件
- ASP.NET Core 2 学习笔记(八)URL重写
- Asp.net core 2.0.1 Razor 的使用学习笔记(二)
- (5)学习笔记 ) ASP.NET CORE微服务 Micro-Service ---- 熔断降级(Polly)
- (10)学习笔记 ) ASP.NET CORE微服务 Micro-Service ---- Ocelot+Identity Server
- Asp.net core 学习笔记 ( ViewComponent 组件 )
- 张高兴的 Windows 10 IoT 开发笔记:部署 ASP.NET Core 2 应用
- Asp.net core 学习笔记 ( Configuration 配置 )
- ASP.NET Core 2 学习笔记(一)开始