ASP.NET Core 视频教程

  • 共 100 个视频教程

第100期-使用托管服务实现后台任务

  • 2020-05-01 02:43:52
  • 28 分钟

使用 Worker 编写后台自动任务,关于 IHostedService 接口与 BackgroundService 抽象类,构建自宿主 Host 环境,在依赖容器中注入后台任务,在 Docker 容器中部署后台任务,在 Windows 服务中托管后台任务,使用 PowerShell 和 SC 命令管理 Windows 服务,使用开源的任务调度器框架。

454次播放

第99期-对WebAPI接口进行版本控制

  • 2020-04-14 07:56:55
  • 23 分钟

业务需求变化,需要对 API 进行修改和版本升级,这些升级不能破坏其原始的 API 协定,并且同时运行旧版和新版的服务协定,因此,有必要制定服务版本控制策略,微软开源库提供整套版本控制解决方案,实战演练,在 ASP.NET Core 中控制 Web API 和 OData 接口的版本,版本约定相关配置,基于 OpenAPI 生成具有版本控制的 Swagger 帮助文档,参阅微软官方帮助文档。

1632次播放

第98期-使用OData开放数据协议

  • 2020-04-08 21:57:41
  • 26 分钟

理解微软开放数据协议,适用于 ASP.NET Core Web API 的 OData 支持库,注册 OData 相关服务,配置中间件,创建 OData 控制器,使用 OData 条件查询资源,实体集合,主键查询,选择查询,展开查询,过滤查询,内置过滤操作符,使用工具生成客户端代理,使用代理类消费 OData 数据,官方提供的在线示例。

4982次播放

第97期-使用WebAPI约定和分析器

  • 2020-04-04 09:40:21
  • 34 分钟

关于 WebAPI 设计准则与最佳实践,使用 [Produces]、[ProducesResponseType]、[ProducesErrorResponseType] 和 [ProducesDefaultResponseType] 标记 WebAPI 响应,使用 OpenAPI 分析器简化操作约定流程,使用微软内置的 DefaultApiConventions 约定器,实战演练,创建并使用自定义的约定模板。

2194次播放

第96期-使用NSwag生成WebAPI帮助文档

  • 2020-03-31 22:13:44
  • 29 分钟

使用 NSwag 工具生成基于 Swagger 规范和符合 OpenAPI 标准的帮助文档,使用 SwaggerUI 和 ReDocUI 界面,理解 NSwag 体系结构和支持的工具链,使用 Visual Studio 添加 OpenAPI 服务引用,在构建阶段生成 C# 客户端代理类和基于 TypeScript 的代理类,可用微软 DocFX 工具基于 OpenAPI 生成离线帮助文档。

5397次播放

第95期-使用OpenAPI生成帮助文档

  • 2020-03-31 00:54:48
  • 79 分钟

关于 Swagger 与 OpenAPI 规范,使用 Swashbuckle 开源库生成 WebAPI 帮助文档,微软内置 ApiExplorer 元数据层,配置 Swagger 提供的 JSON 端点,元数据特性约定,包括 XML 注释中的描述,生成多版本文档,省略过时的内容,接口分组与排序,使用过滤器扩展生成器,配置身份认证与授权,启用 OAuth 流程,注入自定义 CSS 样式,自定义模板,启用元数据特性,使用 ReDoc 界面,第三方开源界面主题。

78次播放

第94期-处理WebAPI中的错误异常

  • 2020-03-23 21:09:50
  • 56 分钟

微软内置的开发者异常页面,自定义异常处理程序,开发环境与生产环境下的异常处理,返回符合 RFC7807 格式标准的错误消息,使用过滤器处理异常,模型验证失败时的错误响应,定制模型验证错误响应工厂,客户端错误响应返回, 自定义 ProblemDetailsFactory 工厂,生成 ProblemDetails 和 ValidationProblemDetails 实例,客户端错误码映射。

5348次播放

第93期-关于WebAPI响应数据的格式

  • 2020-03-22 23:12:28
  • 53 分钟

特定格式的操作结果,认识 JsonResult 与 ContentResult 的区别,理解 HTTP 协议中的 Content-Type 和 Accept 标头,数据格式的内容协商,配置格式化程序,内置 JSON 与 XML 格式化程序,支持第三方格式化程序,使用 [Produces] 限定输出格式,排除内置的格式化程序,使用 [FormatFilter] 过滤器通过 URL 参数协商数据格式,通过示例实战演练,自定义输入格式化器和输出格式化器。

5871次播放

第92期-理解WebAPI控制器返回类型

  • 2020-03-21 12:00:43
  • 22 分钟

理解 Web API 控制器操作的返回类型,使用特定类型返回值,同步操作与异步操作,实现异步可提高吞吐量,集合 IEnumerable<T> 与 IAsyncEnumerable<T> 的区别,关于 IActionResult 接口与 ActionResult<T> 类,使用 [ProducesResponseType] 特性为帮助文档提供更多的描述信息。

3070次播放

第91期-深入WebAPI复杂模型绑定

  • 2020-03-21 00:00:50
  • 65 分钟

简单类型与复杂类型的模型绑定机制,关于参数绑定中的前缀约定,自定义前缀,使用 [BindRequired]、[BindNever] 和 [Bind] 约束绑定,自定义对象模型绑定,集合类型模型绑定,字典类型模型绑定,特殊数据类型模型绑定,使用转换器自定义模型绑定,从模型绑定中排除指定类型,手动模型绑定与验证,自定义模型绑定器。

65次播放

第90期-学习WebAPI模型的基本绑定

  • 2020-03-19 21:28:20
  • 45 分钟

基于属性与参数的模型绑定,使用 [BindProperty] 和 [BindProperties] 绑定属性值,参数绑定原理,理解 [FromBody]、[FromForm]、[FromHeader]、[FromQuery]、[FromRoute] 和 [FromServices] 特性,扩展模型绑定系统,编写并注册自定义值提供程序,内置默认值模型绑定规则,类型转换错误处理机制,基本类型绑定。

5420次播放

第89期-理解WebAPI控制器与验证机制

  • 2020-03-17 22:57:59
  • 45 分钟

创建 API 项目, 理解 Controller 与 ControllerBase 的区别,了解 MVC 中提供的 Attribute 特性,理解 ApiController 特性的作用,路由配置,内置自动模型验证过滤器,响应符合 RFC 规范的错误消息,禁用模型自动验证,将 HTTP 错误状态代码转换为符合 RFC 规范的错误消息,禁用 HTTP 状态码转换,设置错误代码映射。

5721次播放

第88期-学习gRPC指南与示例代码

  • 2020-02-12 18:11:27
  • 36 分钟

谷歌 ProtoBuf 语言规范,跨平台 gRPC 技术栈,通道配置,使用服务引用工具简化配置,配置 TLS 加密传输,异常封送,数据包大小限制,接口版本控制与向后兼容性,健康状况监测,使用反射协议动态调用服务,单元测试与功能测试,在客户端显示服务端处理进度,在浏览器中使用代理调用服务,支持分布式性能收集器,关于 Blazor 框架与 gRPC 服务的深度集成。

5291次播放

第87期-对比gRPC服务与HttpApi接口

  • 2020-02-11 11:14:39
  • 20 分钟

多方面对比 gRPC 服务与 Web API 接口技术选型,协定,协议,有效载荷,规范性,流式传输,浏览器支持,安全性和客户端代码生成,关于 gRPC的优点与缺点,理解 gRPC 服务的应用场景和技术选型,其它技术备用方案推荐。

3243次播放

第86期-在gRPC中使用数字证书身份认证

  • 2020-02-10 11:33:57
  • 33 分钟

数字证书与证书颁发机构,查看证书管理器,学习自签名证书创建工具,理解数字证书认证流程,编写 gRPC 服务,在服务端配置证书认证方式与授权条件,在客户端通道中附加数字证书,服务端获取客户端数字证书的元信息。

3266次播放

第85期-gRPC与IdentityServer集成

  • 2020-01-22 12:05:47
  • 32 分钟

IdentityServer 框架是基于 ASP.NET Core 构建的 OpenID Connect 和 OAuth 2.0 框架,可与 gRPC 集成实现认证与授权,通过示例实战演练,构建认证授权服务,编写 gRPC 服务,使用客户端获取令牌并请求 gRPC 服务完成认证授权,分别配置基于角色和策略的授权机制,客户端令牌构造方式。

3788次播放

第84期-gRPC中的身份认证与授权

  • 2020-01-21 15:24:09
  • 57 分钟

身份认证与授权原理,基于令牌的身份认证,获取当前服务请求的用户标识,通过订票业务示例代码,学习并实现 JWT 令牌颁发服务,配置 JWT 和 Bearer 身份认证,实现 gRPC 服务授权,客户端通过凭证获取令牌,使用令牌请求 gRPC 服务,关于 JWT 令牌的对称加密与非对称加密算法。

4766次播放

第83期-在gRPC中使用拦截器

  • 2020-01-17 00:54:30
  • 29 分钟

拦截器的工作原理与用途,横切关注点,编写示例代码实践拦截器用法,创建客户端拦截器,配置并使用客户端拦截器,创建服务端拦截器,配置并使用服务端拦截器,实现并重写拦截器相关的方法,配置全局拦截器和局部拦截器,将拦截器注册到依赖注入容器。

29次播放

第82期-使用客户端调用gRPC服务

  • 2020-01-14 21:55:21
  • 50 分钟

使用长连接通道创建客户端,将 gRPC 客户端注册到依赖注入容器,在相关服务中使用构造函数注入客户端实例,通过示例代码学习客户端与服务端通信的多种方式,最简单的一元调用方式,服务端写流客户端读流方式,客户端写流服务端读流方式,双向读写流通信方式。

6790次播放

第81期-关于gRPC的相关配置

  • 2020-01-13 22:56:50
  • 33 分钟

配置 TLS 数字证书和端口,实现安全通信,集成依赖注入容器,从 gRPC 服务中解析 HttpContext 实例,服务端与客户端配置选项,限制收发消息大小,向客户端封送异常详情,压缩算法与级别设置,请求拦截器配置,设置 HttpClient 行为,日志工厂配置,数字证书配置,服务端与客户端日志记录配置。

7117次播放

第80期-使用gRPC实现远程过程调用

  • 2020-01-12 12:01:22
  • 37 分钟

理解 RPC 远程过程调用框架,学习 gRPC 技术原理,与语言无关的高性能远程过程调用框架,关于 gRPC 的技术优点和适用场景,通过编写示例实践,分别创建服务端和客户端,使用 Visual Studio 提供的模板创建并管理 gRPC 服务,定义通信协议,生成客户端代理类,在客户端调用远程 gRPC 服务方法,添加文件链接与服务连接。

3912次播放

第79期-使用变更令牌检测目标变更

  • 2019-12-19 23:13:13
  • 46 分钟

变更令牌用于跟踪状态变化的目标对象,从而传播已发生更改的通知,理解 IChangeToken 接口与 ChangeToken 静态类,获取变更令牌与注册变更回调,当配置文件更改时自动加载最新配置,使用 IFileProvider 接口的 Watch 方法监视文件更改,当缓存数据项变更时自动过期,使用 CompositeChangeToken 类可同时组合多个变更令牌,实现自己的 IChangeToken 接口,自定义对象属性变更令牌。

8026次播放

第78期-监听文件系统更改与事件通知

  • 2019-12-18 21:06:37
  • 20 分钟

侦听文件系统更改通知,并在目录或目录中的文件发生更改时引发事件,编写简单的控制台演示程序,并学习 FileSystemWatcher 类的使用技巧,通过计算与比较文件的哈希值,解决文件系统变更事件重复执行多次的问题,读取并打印文件内容,理解重试机制中的指数退避算法。

7328次播放

第77期-使用文件变化监控程序开发应用

  • 2019-12-17 22:06:39
  • 24 分钟

使用微软提供的 dotnet watch 工具监控项目文件更改,当文件变更时自动触发项目编译、测试执行和持续部署,原始命令与监视命令的对应关系,学习 glob 模式匹配,自定义要监视的文件列表,从要监视的文件列表中排除指定的文件,自定义监视项目文件可实现同时监视多个项目,开源代码与内部实现原理。

7701次播放

第76期-从 ASP.NET Core 2.2 迁移到 3.0 版本

  • 2019-12-13 20:26:26
  • 21 分钟

环境准备与先决条件,更新项目文件,更新目标框架,删除过时的包引用,将使用的第三方 NuGet 包升级到最新版,移除 Startup 启动类中过时的内容,使用终结点方式路由,推荐微软内置 JSON 处理库,可回退至第三方 Json.NET 处理库,可配置为不带终结点 MVC 路由,使用 HostBuilder 替换 WebHostBuilder 类。

7081次播放

第75期-ASP.NET Core 3.0 新增功能

  • 2019-12-13 00:25:57
  • 16 分钟

介绍 ASP.NET Core 3.0 和 3.1 中的新增功能与更改,使用 Blazor 开发基于 WebAssembly 客户端应用,关于 Blazor 的客户端与服务端寄宿方式,新增 gRPC 远程过程调用支持,可替代 WCF 技术,改进 SignalR 实时通信框架,支持断开重连事件,内置全新的 JSON 序列化库,全新的泛型主机,支持 HTTP 2.0 协议,使用终结点路由,改进IIS错误报告,优化并提升性能。

16次播放

第74期-使用TypeScript编写脚本

  • 2019-12-05 21:37:30
  • 41 分钟

TypeScript 是 JavaScript 类型的超集,在 ASP.NET Core 中使用 TypeScript 提高编写脚本的效率,理解 TypeScript 的特点,使用 Visual Studio 将 TS 文件编译为符合 ECMAScript 标准的 JS 文件,通过几个示例认识 TypeScript 面向对象开发的高级功能,使用 TypeScript 配置文件设置编译器行为,了解 ECMAScript、JavaScript 和 TypeScript 之间的区别与联系。

7622次播放

第73期-编译压缩合并与前端自动化构建

  • 2019-11-26 20:23:33
  • 34 分钟

使用 WebCompiler 工具将 SASS 和 LESS 编译为 CSS 文件,使用 BundlerMinifier 工具合并压缩 CSS 和 JS 文件,使用配置文件改变工具的默认行为,将构建工具与微软 MSBuild 深度集成,在 Visual Studio 生成阶段完成前端自动化、预编译、合并和压缩,在任务运行程序资源管理器中管理并跟踪任务,将任务绑定至不同的阶段,实现灵活便捷的前端自动化构建。

7433次播放

第72期-使用LibMan工具管理前端库

  • 2019-11-23 21:41:20
  • 24 分钟

微软 LibMan 管理器是一个轻量型的客户端库获取工具,使用该工具可从文件系统或公共 CDN 下载并管理前端库,还可灵活选择要提的文件,并将其置于项目中的任意位置,最新 Visual Studio 已内置 LibMan 支持,支持添加、更新、卸载和还原前端库,也可与 MSBuild 深度集成,在项目的生成阶段自动还原前端库。

7857次播放

第71期-第三方健康状况检查开源库

  • 2019-04-22 22:11:43
  • 43 分钟

健康状况检查 BeatPulse 开源库学习,标准配置,跟踪器,访问认证,可视化 UI 框架,使用配置文件,了解 Prometheus 集群系统监控开源框架,在 Docker 容器中运行 UI 框架,配置 WebHook 回调钩子。在微软 ASP.NET Core 框架中集成 BeatPulse 健康状况服务实现,配置可视化界面查看监控状态。

12978次播放

第70期-编写健康状况检查组件与发布器

  • 2019-04-22 20:51:09
  • 47 分钟

开发自己的内存健康状况检查服务组件,内存健康状况检查服务设置选项,提供 IHealthChecksBuilder 扩展方法,运行状况检查通知发布器,实现 IHealthCheckPublisher 接口,了解 WebHook 回调钩子,发布器的启动延迟时间、执行间隔、条件筛选和超时时间设置,在依赖注入容器中注册发布器。

11806次播放

第69期-数据上下文探测与后台服务

  • 2019-04-21 12:39:19
  • 42 分钟

关于 Entity Framework Core DbContext 上下文状况探测,使用编码方式创建与删除数据库,实现 IHealthCheck 接口实现状况检查服务,使用 IHostedService 实现后台自动任务,在自动任务中变更健康检查服务的状态,了解 Kubernetes 中关于健康状况探测的配置。

7109次播放

第68期-运行状况检查选项配置

  • 2019-04-21 10:26:15
  • 39 分钟

运行状况检查选项设置,检查服务分组,使用 Tags 和 Lambda 表达式筛选检查服务,自定义 HTTP 状态代码映射,设置响应缓存,自定义接口内容输出,使用 BeatPulse 提供的开源库检查 SqlServer 数据库引擎的连接状态。

5928次播放

第67期-基础服务运行健康状况检查

  • 2019-04-21 01:25:12
  • 42 分钟

ASP.NET Core 提供的健康状况检查中间件和库,用于报告应用程序基础结构组件的运行状况,引用健康检查相关程序包,第三方实现 BeatPulse 开源库,实现 IHealthCheck 接口创建自定义的健康状态检查服务,在依赖注入容器中注册运行状况检查服务,运行状况检查中间件配置,监听地址与端口设置。

631次播放

第66期-机密数据与COOKIE策略

  • 2019-03-22 21:40:04
  • 60 分钟

在 ASP.NET Core 应用中安全存储开发机密,使用命令行工具管理用户机密,启用机密存储,在 Visual Studio 中管理用户机密,在应用中读取机密配置文件,将机密配置信息映射到 POCO 实体对象,动态生成安全的数据库连接字符串。配置 Cookie 策略中间件, 监控 Cookie 变更通知事件,了解 GDPR 欧盟通用数据保护条例。

13059次播放

第65期-数据保护配置与可扩展性

  • 2019-03-20 22:27:50
  • 46 分钟

配置数据保护器,分别在 Azure 密钥保管库、分布式 Redis 缓存和 EF Core 中存储密钥,配置生成密钥的有效期,加密算法配置,计算机范围的策略配置,非依赖注入场景下的数据保护提供者,数据保护系统的扩展性,使用第三方开源库加密 ASP.NET Core 参数,学习微软数据保护示例代码。

13708次播放

第64期-数据保护与密码哈希

  • 2019-03-20 21:56:28
  • 56 分钟

学习 ASP.NET Core 中的数据保护方案,关于 IDataProtectionProvider 接口和 IDataProtector 接口,构建依赖注入容器,使用数据保护器加密与解密数据,保护器的层级结构,使用 PBKDF2 算法生成哈希密码,使用微软身份认证框架中的 PasswordHasher 密码哈希算法类,具有生命周期的 TimeLimitedDataProtector 数据保护器,使用 PersistedDataProtector 找回丢失的数据, 短暂性 EphemeralDataProtectionProvider 数据保护器。

13096次播放

第63期-非对称加密&数字签名&数字证书

  • 2019-03-19 22:00:06
  • 77 分钟

学习非对称加密算法,关于 RSA 算法的非对称加密与解密,推荐基于 .NET Core 平台的加密解密开源库,数字签名的基本原理,数字证书与证书颁发机构,关于 HTTPS 协议的基本原理,程序集签名,可用 MakeCert 工具创建数字证书,推荐《微软.NET程序的加密与解密》和《.NET安全揭秘》图书,微软安全系列算法体系结构图。

13761次播放

第62期-编码&哈希摘要&对称加密

  • 2019-03-11 21:43:31
  • 75 分钟

编码与解码,字符集与算法,关于 Unicode 字符集,理解 UTF-8 编码方式,使用 Base64 编码与解码,哈希散列摘要算法,理解 MD5 算法 和 SHA 系列算法,使用 SHA-1、SHA-224、SHA-256、SHA-384 和 SHA-512 哈希算法,学习并使用具有密钥的 HMAC 哈希算法,理解单密钥对称加密算法,学习 AES、RC2、DES、TripleDES 和 Rijndael 对称加密算法。

13304次播放

第61期-应用程序安全性

  • 2019-03-07 21:28:56
  • 101 分钟

关于 ASP.NET Core 应用程序的安全性,客户端 IP 地址白名单访问限制,防止 URL 重定向攻击, 防止跨站脚本注入 XSS 攻击,学会使用 HTML 编码器、 JavaScript 编码器 和 URL 编码器,防止跨站点请求伪造 XSRF 或 CSRF 攻击,基于 Antiforgery 防伪标记的生成与验证配置。

13414次播放

第60期-HTTPS协议安全访问配置

  • 2019-02-25 21:28:43
  • 73 分钟

理解 HTTP 协议、HTTPS 协议和 HSTS 协议,了解 SSL 与 SSL 协议,在 ASP.NET Core 中使用 RequireHttpsAttribute 将部分请求重定向到 HTTPS 请求,使用 HTTPS 重定向中间件将所有 HTTP 请求重定向到 HTTPS 请求,反向代理转接头与重定向注意事项,使用 HSTS 中间件向客户端浏览器发送基于严格传输安全性协议的 HSTS 标头,配置 HTTPS 端口与重定向状态码,关于 HSTS 预加载列表说明,配置 HSTS 中间件,证书配置。

13597次播放

第59期-CORS与JSONP跨域请求

  • 2019-02-21 23:33:51
  • 67 分钟

跨域请求,跨域资源共享,理解 CORS 运行原理,简单请求与预检请求,浏览器同源策略,在 ASP.NET Core 中使用 CORS 中间件实现跨域请求,使用中间件实现跨域请求,在 MVC 中使用筛选器实现跨域请求,跨域策略详细配置,理解 JSONP 技术原理,在 ASP.NET Core 中实现 JSONP 跨域请求。

14970次播放

第58期-基于资源的授权与动态授权

  • 2019-01-09 00:48:43
  • 99 分钟

基于资源的授权方式,定义资源授权条件,实现资源授权处理程序,调用授权服务处理授权,基于角色与权限的动态授权,自定义授权筛选器,在视图中使用授权服务接口。

99次播放

第57期-授权机制的内部工作原理

  • 2019-01-04 22:42:02
  • 76 分钟

理解 ASP.NET Core MVC 中的授权扩展,基于认证方案的授权,授权应用程序模型提供者,授权过滤器,策略计算器,授权服务,授权策略提供者,授权处理程序上下文与工厂,授权处理程序提供者,授权计算器,理解授权策略的执行过程,编写自定义授权特性标记,实现自定义授权策略提供者,基于 Razor 页面的授权约定。

15387次播放

第56期-基于策略的授权

  • 2019-01-03 23:12:55
  • 93 分钟

理解授权的过程与原理,在 ASP.NET Core 中使用授权组件,简单授权,基于角色的授权,基于声明的授权,基于策略的授权,授权策略与授权条件,授权机制的内部工作原理,自定义授权处理程序,多条件授权处理程序,使用 Func 委托实现授权策略,授权处理程序的返回结果约定。

16124次播放

第55期-OAuth与OIDC协议

  • 2018-12-30 03:09:53
  • 92 分钟

理解 OAuth 2.0 与 OpenID Connect 协议的区别,在 ASP.NET Core 中使用 OAuth 处理程序进行身份认证,使用 OpenID Connect 处理程序进行身份认证,分析 OIDC 协议获取访问令牌和用户身份信息的详细流程。

2194次播放

第54期-OpenID与OAuth协议

  • 2018-12-27 23:44:48
  • 82 分钟

理解 OpenID 认证协议,理解 OAuth 2.0 授权协议,通过不同的授权方式获取访问令牌,OpenID Connect 认证与授权协议,在 ASP.NET Core 中使用 OAuth 授权协议集成第三方登录方式,分析授权码模式获取访问令牌的业务流程。

16274次播放

第53期-SAML与WS联合身份认证

  • 2018-12-23 02:02:25
  • 65 分钟

参数化 JWT 访问令牌,基于 OSS 单点登录的开源身份验证提供程序,理解 SAML 安全断言标记语言,在 .NET Core 中生成并校验 SAML 格式的令牌,阿里云和腾讯云提供的免费联合身份认证,在 ASP.NET Core 中集成微软 WS-Federation 联合身份认证方式。

1481次播放

第52期-JwtBearer身份认证方案

  • 2018-12-22 02:34:08
  • 87 分钟

编写 JWT 令牌签发服务,在 ASP.NET Core 中使用 JwtBearer 身份认证方案验证令牌,在 APP 客户端 和 Web 客户端中申请 JWT 令牌,并使用 Bearer 认证方式,通过 JWT 令牌访问受保护数据,对称和非对称算法签名技术,生成 RSA 公钥和私钥,使用私钥签发令牌,通过公钥验证令牌,基于角色声明的授权。

1505次播放

第51期-身份认证方式与令牌

  • 2018-12-20 21:57:55
  • 80 分钟

基于 HTTP 协议的身份认证规范, Digest 摘要身份认证,Windows 身份认证,Kerberos 和 NTLM 协议,Bearer 身份认证,在 IIS 中配置身份认证方案,在应用程序中提供访问凭证,基于 JWT 规范的访问令牌,在 .NET Core 中生成并校验 JWT 格式的令牌。

15010次播放

第50期-基于HTTP协议的认证方案

  • 2018-12-18 00:57:40
  • 81 分钟

基于 Cookie 的身份认证原理回顾,理解 HTTP 协议栈提供的通用认证框架,学习 HTTP 基本身份认证,根据微软设计规范,编写自己的认证框架,在 ASP.NET Core 中实现 HTTP 基本身份认证方案,默认常量,参数选项,身份认证处理器,提供与微软一致的扩展方法,编写可扩展的认证事件,在其它应用中使用自己开发的认证方案。

81次播放

第49期-身份认证原理与Identity扩展

  • 2018-12-15 13:50:45
  • 82 分钟

理解 ASP.NET Core 身份认证系统的核心原理,分析微软身份认证系统的源代码。使用 IdentityManager 管理 Identity 数据结构,编写自己的后台管理界面,手机号绑定与验证,2AF双重身份认证,基于 TOTP 算法的时间一次性密码,二维码生成方案。

9390次播放

第48期-身份认证的工作原理

  • 2018-12-13 01:14:11
  • 83 分钟

基于 Cookie 认证的参数配置,使用 Cookie 策略中间件,订阅 Cookie 的添加与移除事件,票据的过期与缓存。ASP.NET Core 身份认证的工作原理,通过 HttpContext 的扩展方法进行登录、验证、退出、质询和拒绝,认证服务接口,认证方式提供者,认证处理程序提供者,自定义认证处理程序,并通过依赖注入扩展身份认证方案。

800次播放

第47期-基于声明的身份认证与授权

  • 2018-12-11 01:13:11
  • 75 分钟

理解基于声明的身份认证与授权,理解身份认证中的 Claims、ClaimsIdentity 和 ClaimsPrincipal 模型,生成 TOKEN 令牌,使用中间件验证令牌,用 Cookie 方案实现登录和注销功能,在 MVC 中使用基于角色的授权方式。

795次播放

第46期-Identity框架相关配置

  • 2018-12-09 00:18:42
  • 86 分钟

短信与邮件发送器配置,理解基于 ASP.NET Core MVC 控制器的 Identity 框架,双重 2AF 身份认证,理解认证与授权流程,深入 Identity 框架配置,更改声明类型,账号锁定机制,密码安全性,登录策略,TOKEN 校验,用户名安全性和 Cookie 相关配置,基于 OAuth 2.0 协议的第三方身份验证提供程序,集成腾讯 QQ 和 微信身份认证。

85次播放

第45期-Identity身份认证框架

  • 2018-12-08 14:50:25
  • 73 分钟

认证与授权的区别,基于声明的身份认证,在 ASP.NET Core 中使用内置的 Identity 框架,使用基架快速创建身份认证系统,自定义表结构与实体关系,理解 Identity 的体系结构,扩展数据访问层,自定义身份认证系统界面。

10194次播放

第44期-响应缓存与响应压缩

  • 2018-12-02 12:52:22
  • 77 分钟

理解HTTP缓存规范,在 ASP.NET Core 中配置响应缓存,设置缓存策略,在中间件中缓存响应,缓存部分页面,基于内存和分布式缓存的标记帮助程序,静态文件缓存配置,了解 CDN 缓存的优势。响应内容压缩中间件,配置 Gizp 和 Brotli 压缩算法,编写自定义压缩算法提供者,基于反向代理的压缩配置。

8824次播放

第43期-内存缓存与分布式缓存

  • 2018-12-01 22:53:35
  • 73 分钟

缓存的概念与优点,基于内存缓存的配置,缓存项设置与获取、过期事件订阅、绝对过期、滑动过期和缓存依赖项,分布式缓存的配置方法,扩展分布式缓存接口,基于 Redis 的分布式缓存实现,安装 Redis 服务,配置端口和密码,基于 SQL Server 的分布式缓存实现,基于内存的分布式缓存实现,了解缓存雪崩与缓存穿透。

16132次播放

第42期-代理转接头与发布配置

  • 2018-11-28 23:28:23
  • 45 分钟

理解反向代理转接头,关于 X-Forwarded-For、X-Forwarded-Proto 和 X-Forwarded-Host 转接头,设置可信任的代理服务器地址,负载均衡及其配置。项目生成与发布流程,排除发布文件,包含发布文件,在发布前后运行自动任务,了解持续集成与交付,如何实施 DevOps 模型。使用全新的 LibMan 客户端库管理器。

16903次播放

第41期-在Docker容器中托管应用

  • 2018-11-28 00:17:08
  • 107 分钟

容器技术简介,学习 Docker 体系结构,开发环境搭建,入门教程推荐,创建 ASP.NET Core 应用,使用 Visual Studio 自动生成映像,通过镜映像启动容器,私有仓库与公有仓库,将映像发布到远程仓库,编写 Docker Compose 文件,使用 Docker 编排工具在 Linux 平台上快速构建基于 SQL Server on Linux 的容器和 Web 容器, 了解 Swarm 集群、使用 Kubernetes 管理集群,认识微服务。

106次播放

第40期-使用Apache在Linux平台上托管应用

  • 2018-11-22 23:16:30
  • 56 分钟

使用 Putty 通过 SSH 公钥连接 Linux 服务器,在 CentOS 上安装 .NET Core 运行时,搭建 FTP 服务器,发布文件到服务器,安装 Apache 服务,配置服务器,转发请求代理与负载均衡配置,绑定域名,配置 SSL 证书,创建后台监控服务,配置防火墙。

17052次播放

第39期-使用Nginx在Linux平台上托管应用

  • 2018-11-20 23:06:40
  • 86 分钟

使用 Putty 远程管理 Linux 服务器,在 Ubuntu 上安装 .NET Core 运行时,通过 PSCP 上传文件到服务器,安装 Nginx 服务,配置反向代理,绑定域名,配置 SSL 证书,创建后台监控服务,安装 FTP 服务,通过 FTP 方式发布应用,编写脚本,实现一键自动化发布。

17128次播放

第38期-在Windows平台上发布应用

  • 2018-11-17 23:22:01
  • 113 分钟

在 Windows 平台上发布 ASP.NET Core 应用,托管与部署的步骤,独立部署和框架依赖方式,安装 IIS 服务器,在服务器上安装 .NET Core 运行时,配置网站,理解发布选项,配置文件系统部署,配置 Web Deploy 方式部署,配置 FTP 方式部署,一键将应用发布到微软云应用服务或虚拟机,免费获取 SSL 证书,配置 HTTPS 协议支持,在 Windows 服务中托管应用。

17225次播放

第37期-性能负载测试与高级调试

  • 2018-11-15 23:24:10
  • 93 分钟

性能测试,负载测试,基于代码的 UI 测试,关于 Windows 和 Linux 平台上的调试器与内存转储工具,抓取服务器内存转储文件,使用 WinDbg 在本地调试程序,理解 CLR 对象的内存形态,通过转储文件分析服务器内存和 CPU 的使用情况,介绍性能计数器和性能探测器。

17250次播放

第36期-集成测试&远程调试&源码跟踪

  • 2018-11-13 23:32:50
  • 108 分钟

在 ASP.NET Core 中测试控制器逻辑,为控制器编写单元测试,单元测试中的 Fake、Stub 和 Mock 术语,使用 Moq 框架进行单元测试,轻量级集成测试,了解 Selenium、Html Agility Pack 和 AngleSharp 框架,远程调试服务器程序,源码跟踪调试配置。

17312次播放

第35期-单元测试

  • 2018-11-07 23:19:48
  • 55 分钟

认识单元测试,单元测试的最佳做法,使用 xUnit 进行单元测试,使用 MSTest 进行单元测试,使用 NUnit 进行单元测试,三种测试框架的最佳实践,单元测试管理器,使用 Live Unit Testing 实时显示测试结果,查看代码测试覆盖率。

17396次播放

第34期-构建WebAPI接口

  • 2018-10-31 00:10:45
  • 124 分钟

使用 ASP.NET Core 构建 Web API 接口,控制器约定,操作返回类型,返回特定类型,同步操作,异步操作,使用 EF Core 访问 MySQL 数据库,为 Web API 提供数据,使用基于 Swagger 规范的 Swashbuckle 框架生成 Web API 帮助文档,特定格式的操作结果,内容协商机制,配置格式化器,基于 URL 格式化参数, 自定义格式化程序。

124次播放

第33期-筛选器&部件&功能

  • 2018-10-26 00:50:38
  • 114 分钟

筛选器作用域与执行顺序,重写默认顺序,取消与短路筛选器,筛选器中的依赖注入,授权筛选器,资源筛选器,操作筛选器,异常筛选器,结果筛选器,在筛选器管道中使用中间件。应用程序部件,程序集加载过程,自定义功能提供程序,显示可用功能。

114次播放

第32期-控制器&约定&筛选器

  • 2018-10-24 23:02:55
  • 93 分钟

ASP.NET Core 中的文件上传,使用模型绑定上传小文件,使用流式处理上传大文件,控制器中的依赖注入,构造函数注入,基于 FromServices 的注入方式,配置设置注入。应用程序模型,提供程序,自定义约定。筛选器的工作原理,同步筛选器与异步筛选器,IFilterFactory 筛选器工厂和内置筛选器特性。

17756次播放

第31期-MVC控制器

  • 2018-10-17 23:06:25
  • 88 分钟

MVC中的控制器,关于 Action 操作定义,返回响应,传统路由,多个路由,属性路由,路由名称,合并路由,对属性路由排序,路由模板,自定义路由属性,URL生成,区域分区,自定义路由约束。

17913次播放

第30期-视图布局

  • 2018-10-10 22:57:27
  • 81 分钟

视图布局、指定布局模板、导入共享指令、标记帮助程序、自定义标记帮助程序、部分视图、部分视图的申明、引用和数据传递、视图组件复用原理和自定义视图组件。

17285次播放

第29期-模型验证与视图语法

  • 2018-09-27 20:17:02
  • 100 分钟

使用 FluentValidation 进行模型验证,扩展验证框架,支持本地化错误消息提示。ASP.NET Core MVC 中的视图语法与指令,控制器指定视图,向视图传递数据,学习 Razor 语法,视图预编译设置。

16000次播放

第28期-模型验证

  • 2018-09-21 22:31:17
  • 80 分钟

模型验证简介,验证属性,验证错误消息的多语言支持,通过 ModelState.IsValid 检查模型验证结果,使用 TryValidateModel 手动验证,实现 IValidatableObject 接口自定义验证规则,继承 ValidationAttribute 实现自定义验证属性,深入客户端验证,实现 IClientModelValidator 接口向客户端提供验证元数据信息,向动态表单添加验证适配器,远程验证,使用第三方库让模型验证体验更好。

17702次播放

第27期-模型绑定

  • 2018-09-21 20:53:22
  • 81 分钟

模型绑定的工作原理,基本类型和复杂类型绑定,IFormFile文件上传,[BindRequired]、[BindNever]、[FromHeader]、[FromQuery]、[FromRoute]、[FromForm]、[FromServices]、[FromBody] 和 [ModelBinder] 特性的作用,通过特性自定义模型绑定行为,自定义模型绑定,实现 IModelBinder 与 IModelBinderProvider 接口,绑定请求正文中的带格式的数据。

16101次播放

第24期-SignalR实时通信与推送技术

  • 2018-09-16 00:01:07
  • 119 分钟

在 SignalR 中使用 JSON 协议和 MessagePack 协议,流式数据处理与推送,演示将超大文件通过数据流的方式推送至客户端,身份验证和授权,编写一个基于 Cookie 认证的 SignalR 服务端。

118次播放

第26期-Razor页面与模型

  • 2018-09-15 22:47:23
  • 81 分钟

Razor 页面布局、部分视图、模板和标记帮助程序,页面跳转,自定义路由,自定义页面存放目录,页面 Filter 过滤器,基于 .NET 标准类库与 .NET Core 类库区别,基于 Razor 页面的类库,通过 IFormFile 上传文件。

17835次播放

第25期-Razor页面与模型

  • 2018-09-15 22:47:23
  • 63 分钟

理解 Razor 页面引擎,在 ASP.NET Core 中使用 Razor 页面模型,关于 @page 指令的作用,引入 PageModel 页面模型,页面目录结构,通过一个简单的增删改查示例学习 Razor 页面模型。

17816次播放

第23期-SignalR实时通信与推送技术

  • 2018-09-15 22:47:23
  • 96 分钟

深入讲解 SignalR 中的 Hub 集线器,连接、用户和分组,连接与断开事件,分别向指定连接、用户和分组推送消息,在 MVC 控制器中通过 IHubContext 接口注入 Hub 集线器,在中间件中使用 Hub 集线器,使用 IUserIdProvider 接口自定义用户编号提供者,配置 CORS 跨域策略,基于 SignalR 推送技术的 JavaScript 客户端和 .NET 客户端。

17850次播放

第21期-请求第三方WebAPI接口

  • 2018-09-14 17:51:51
  • 89 分钟

HttpClient 客户端的基本用法,命名客户端,类型化客户端,在 ASP.NET Core 中集成 Refit 框架,通过 DelegatingHandler 实现处理程序中间件,集成 Polly 框架,提供全面恢复和临时故障处理方案。

13824次播放

第22期-实时通信与推送技术

  • 2018-09-14 15:26:25
  • 86 分钟

实时通信方案介绍,短轮询,长轮询,服务器发送事件(Server-Sent Events) 和 WebSocket 通信方案,在 ASP.NET Core 中使用 WebSocket 技术,实时通信 SignalR 技术解决方案,集线器,使用 SignalR 技术实现一个简单的群发聊天室。

12206次播放

第20期-全球化&本地化&多语言

  • 2018-09-14 15:07:19
  • 66 分钟

自定义 RequestCultureProvider 语言文化提供者,使用 RouteDataRequestCultureProvider 通过路由数据提供语言文化,定义 ASP.NET Core MVC 过滤器中间件,资源文件的命名与组织结构,区域性回退行为,通过 FromServicesAttribute 向 Action 依赖注入服务,Portable Object 可移植对象本地化,理解 PO 文件格式,使用 PO 文件编辑器,通过 OrchardCore.Localization.Core 组件实现 PO 文件的本地化与多语言。

12185次播放

第19期-全球化&本地化&多语言

  • 2018-09-14 15:06:17
  • 93 分钟

理解全球化与本地化,使用 IStringLocalizer 和 IHtmlLocalizer 将内容本地化,使用 IStringLocalizerFactory 工厂创建共享资源文件, 使用 IViewLocalizer 将视图本地化,使用 DataAnnotations 将模型验证本地化,资源文件与本地化的具体配置,本地化依赖注入,关于微软内置的 QueryStringRequestCultureProvider、CookieRequestCultureProvider 和 AcceptLanguageHeaderRequestCultureProvider 语言文化提供者的具体使用方法,通过写 Cookie 的方式设置语言文化。

12212次播放

第18期-应用状态与会话

  • 2018-09-14 15:06:00
  • 98 分钟

HTTP 是无状态的协议,深入理解 Cookie 存储机制,深入 Session 状态维护,分布式缓存 Session 状态,使用 JSON 和 Protobuf 扩展 Session 序列化方案,使用 TempData 传递数据,使用查询字符串和隐藏域传数据,使用 HttpContext.Items 在中间件之间通信,使用缓存存储和检索数据,使用依赖注入存储对象。

12218次播放

第17期-主机与服务器配置

  • 2018-09-14 15:03:34
  • 67 分钟

ASP.NET Core 中的两种服务器实现,基于 Kestrel 和 HTTP.sys 的服务器配置,WEB主机和通用主机的区别,分别使用 WebHostBuilder 和 HostBuilder 构建服务主机,服务器的基本配置。

12187次播放

第16期-预编译与文件提供程序

  • 2018-09-14 14:59:12
  • 93 分钟

理解 CSS 预编译,了解 LESS 和 SASS 技术,在 Visual Studio 中使用 LESS 和 SASS,使用 Gulp 编写自动化预编译任务。认识文件系统,讲解 IFileProvider 文件提供程序,使用 IFileInfo 和 IDirectoryContents 访问文件目录内容,使用字节流读取文件,使用 PhysicalFileProvider、EmbeddedFileProvider 和 CompositeFileProvider 构建文件访问程序,文件路径统配模式。

11405次播放

第15期-客户端开发技术

  • 2018-09-14 14:53:30
  • 88 分钟

编写 Grunt 自动化任务,包管理方案,使用 Bower 管理前端包,使用 Bootstrap 构建响应式站点,针对静态文件的捆绑和缩小,使用 BrowserLink 浏览器链接,在 .NET 中调用 Node.js 模块。

11399次播放

第14期-日志异常与前端构建

  • 2018-09-14 14:51:58
  • 92 分钟

在 ASP.NET Core 中使用日志框架,使用 LoggerMessage 类提高日志记录性能,处理错误异常,开发人员异常页,配置自定义异常处理页,配置状态代码页,Node.js框架简介,在 Visual Studio 中安装 Node 模块,使用 Gulp 前端构建工具,合并与压缩文件,编写前端自动化任务,使用任务运行资源管理器管理并设置任务。

11404次播放

第13期-日志记录与分卷

  • 2018-09-14 14:51:07
  • 89 分钟

将日志记录输出,使用微软内置的日志提供程序,添加日志提供程序,日志类别,日志级别,事件编号,消息模板,记录异常,日志筛选器,日志作用域,日志配置文件,使用第三方提供程序 NLog 记录日志,日志配置与智能提示,日志分卷。

11401次播放

第12期-配置选项与配置系统扩展

  • 2018-09-14 14:46:20
  • 80 分钟

基于选项的配置,通过委托配置简单选项,自选项配置,在控制器和视图中注入选项,基于名称的选项配置,创建 Entity Framework 扩展配置提供程序,将配置存储到数据库中。

11392次播放

第11期-使用多环境与配置文件

  • 2018-09-14 14:44:08
  • 117 分钟

系统环境变量,关于开发、测试和生产环境的配置,启动类和配置方法的约定。默认配置文件注入与读取,自定义 JSON 和 XML 配置文件,指定环境配置文件,添加内存字典配置,读取配置值与配置节的技巧。

11429次播放

第10期-URL重定向与重写

  • 2018-09-14 14:42:41
  • 73 分钟

使用 URL 重写中间件,理解重定向与重写,永久重定向与临时重定向,简单重定向与重写设置,通过配置文件加载 ApacheModRewrite 规则,加载 IISUrlRewrite 规则,自定义规则配置。

11384次播放

第09期-使用路由中间件

  • 2018-09-14 14:35:44
  • 62 分钟

使用路由中间件,路由模板配置规则,路由约束配置,路由默认值设置,路由正则表达式,通过路由生成URL链接,通过 RouteHandler 处理默认路由,使用 RouteBuilder 生成路由表。

11374次播放

第08期-文件系统服务与路由

  • 2018-09-14 14:34:33
  • 113 分钟

静态文件访问,文件服务器,文件缓存,使用 PhysicalFile 设置文件权限, 启用目录浏览,默认文档设置。路由系统介绍,路由中间件与 MVC 中间件配置,默认路由规则映射方式。

11424次播放

第07期-深入研究中间件

  • 2018-09-14 14:33:36
  • 104 分钟

ASP.NET Core 中间件概述,使用 Run、Map 和 Use 方法配置请求管道,理解并设计自己的中间件,基于约定的中间件和基于工厂的中间件,中间件中的依赖注入与配置选项。

11416次播放

第06期-管道&中间件&依赖注入

  • 2018-09-14 14:28:04
  • 92 分钟

ASP.NET Core 应用程序启动流程,中间件的作用与实现,配置服务与管道,通过 Startup 类 和 IStartupFilter 配置请求处理管道,依赖注入与生命周期。

11403次播放

第05期-ASP.NET Core WebAPI 技术

  • 2018-09-14 14:18:07
  • 85 分钟

创建一个 ASP.NET Core WebAPI 项目,在 WebAPI 项目中使用 Entity Framework Core 进行数据访问,依赖注入 DbContext 数据上下文,连接字符串配置,数据库迁移与回滚,通过 Swashbuckle 生成 WebAPI 帮助文档。

11396次播放

第04期-ASP.NET Core 技术简介

  • 2018-09-14 14:18:07
  • 108 分钟

介绍 ASP.NET Core 技术,为何使用 ASP.NET Core 技术,通过命令行创建一个简单的应用程序, 研究Page模型和MVC模型, 基于Razor的视图引擎学习,LocalDB轻量级数据库介绍,演示基于ASP.NET Core的简单应用。

11419次播放

第01期-.NET Core 平台技术体系介绍

  • 2018-09-14 14:18:07
  • 73 分钟

介绍微软.NET框架技术的演变,.NET Core 2.0 的技术架构,新增内容和改进,包、元包和框架,命令行工具的使用,在Visual Studio 2017 创建并生成完整的.NET Core解决方案。

11384次播放

第03期-零度微框架项目概述

  • 2018-09-14 14:18:07
  • 87 分钟

介绍零度微框架中存在的问题,解决方法,基于.NET Core 创建微框架解决方案,创建项目,并介绍微框架中的每个项目用途,VS中的多线程调试方法,.NET Core中的单元测试和VS中的 Live Unit Testing 功能。

11398次播放

第02期-.NET Core 程序的跨平台部署

  • 2018-09-14 14:18:07
  • 134 分钟

跨平台 .NET Core 程序介绍,Linux简介与入门,配置.NET Core环境,在Centos中生成 .NET Core 应用程序,打包程序集,绑定域名,上传与下载,配置Nugix反向代理,如何在Centos中部署 ASP.NET Core 网站应用程序。

11446次播放