摘要:
2.4.1 EF Core -- MySQL环境准备 安装 Docker 配置 docker 镜像仓库国内镜像地址 运行 mysql docker container 通过 Navicate 连接 安装 Docker Install Docker Engine on CentOS:https://d 阅读全文
摘要:
2.3.4 Web API -- MVC终结点 MVC与MVVM 模型绑定 自定义模型绑定器 模型验证 返回数据处理 MVC与MVVM MVC ASP.NET Core MVC 概述:https://docs.microsoft.com/zh-cn/aspnet/core/mvc/overview? 阅读全文
摘要:
2.3.3 Web API -- 路由与终结点 路由模板 约定路由 特性路由 路由冲突 终结点 ASP.NET Core 中的路由:https://docs.microsoft.com/zh-cn/aspnet/core/fundamentals/routing?view=aspnetcore-5. 阅读全文
摘要:
2.3.2 Web API -- HTTP管道与中间件 管道 中间件 ASP.NET Core 中间件:https://docs.microsoft.com/zh-cn/aspnet/core/fundamentals/middleware/?view=aspnetcore-5.0 中间件是一种装配 阅读全文
摘要:
2.3.1 Web API -- REST && RESTful 什么是 REST,什么是 RESTful RESTful API 设计 RESTful 成熟度模型 什么是 REST,什么是 RESTful 理解RESTful架构:https://www.ruanyifeng.com/blog/20 阅读全文
摘要:
前言 2020年是脚踏实地,慢慢成长的一年,由于疫情的缘故,今年社区没有像去年一样举办多场线下活动,不过 .NET CONF CHINA 大会昨天也在苏州顺利召开,回顾这一年,也有不少惊喜与感悟 2020年回顾 公众号 自从去年双十一创建公众号以来,累计发布原创内容 131 篇,主要是学习笔记与读书 阅读全文
摘要:
2.2.4 核心模块--Host 什么是 Host Host 的默认配置做了哪些事情 框架提供的服务 HostedService 后台服务 ASP.NET Core Web 主机:https://docs.microsoft.com/zh-cn/aspnet/core/fundamentals/ho 阅读全文
摘要:
2.2.3 核心模块--配置 IConfiguration Options ASP.NET Core 中的配置:https://docs.microsoft.com/zh-cn/aspnet/core/fundamentals/configuration/?view=aspnetcore-5.0 I 阅读全文
摘要:
2.2.2 核心模块--日志 ILogger 的使用 日志的 ID 日志的分类 日志的级别 LoggerProvider 日志的最佳实践 .NET Core 和 ASP.NET Core 中的日志记录:https://docs.microsoft.com/zh-cn/aspnet/core/fund 阅读全文
摘要:
2.2.1 核心模块--依赖注入 什么是依赖注入 .NET Core DI 生命周期 服务设计 服务范围检查 ASP.NET Core 依赖注入:https://docs.microsoft.com/zh-cn/aspnet/core/fundamentals/dependency-injectio 阅读全文
摘要:
2.1 引入 http协议 web server && web application framework .net 与 .net core asp .net core web api 示例 CS:客户端-服务器 BS:浏览器-服务器 2.1.1 http协议 请求过程 消息结构 请求方法 状态码 阅读全文
摘要:
1.1 什么是软件架构
1.2 软件架构的基本思路
1.3 单体向分布式演进、云原生、技术中台 阅读全文
摘要:
第 10 章 部署 10.1 部署到 IIS ASP.NET Core 应用程序支持部署到 IIS 中,之后它将作为应用程序的反向代理服务器和负载均衡器,向应用程序中转传入的 HTTP 请求 默认情况下,ASP.NET Core 项目的 Program 类使用如下方式创建 WebHost publi 阅读全文
摘要:
集成测试 集成测试能够确保应用程序的组件正常工作,包括应用程序支持的基础结构,如数据库和文件系统等 进行集成测试时,应为项目添加 Microsoft.AspNetCore.MvcTesting 包 它提供了 WebApplicationFactory 类,用于创建内存中的测试服务器,其定义和主要成员 阅读全文
摘要:
第 9 章 测试和文档 9.1 测试 测试是软件生命周期中的一个非常重要的阶段,对于保证软件的可靠性具有极其重要的意义 常见的测试方法有很多,根据不同的维度,可以把测试方法分为不同的类别 从观察结构的透明性方式上,分为白盒测试、黑盒测试和灰盒测试 从测试执行方式上,分为手动测试和自动化测试 从测试所 阅读全文
摘要:
第 8 章 认证和安全 配置数据保护 在默认的情况下,数据保护 API 有自身的默认配置,如密钥的保存位置、密钥的有效期、所使用的算法等 前面已经提到了密钥的默认有效期以及用到的算法,对于密钥的保存位置,根据应用程序运行环境的不同,密钥的保存位置也不相同 保存密钥的文件名为 kdy-.xml,其中 阅读全文
摘要:
第 8 章 认证和安全 8.3 HTTPS HTTP 协议能够在客户端和服务器之间传递信息,特点是以明文的方式发送内容,并不提供任何方式的数据加密 为了解决 HTTP 协议这一缺陷,需要使用另一种协议:HTTPS,它在 HTTP 的基础上加入了安全套接层 SSL 协议 SSL 层依靠证书来验证服务器 阅读全文
摘要:
第 8 章 认证和安全 8.2 ASP.NET Core Identity Identity 是 ASP.NET Core 中提供的对用户和角色等信息进行存储与管理的系统 Identity 由3层构成,最底层为 Store 层,即存储层,包含 IUserStore 接口与 IRoleStore 接口 阅读全文
摘要:
第 8 章 认证和安全 8.1 认证 认证(Authentication)是指验证用户身份的过程,授权(Authorization)是验证一个已经通过认证的用户是否有权限做某些事的过程 常见的 HTTP 认证方式包括: Basic 认证:用户名密码 Digest 认证:摘要认证 Bearer 认证: 阅读全文
摘要:
第 7 章 高级主题 7.4 HATEOAS 全称 Hypermedia AS The Engine Of Application State,即超媒体作为应用程序状态引擎。它作为 REST 统一界面约束中的一个子约束,是 REST 架构中最重要、最复杂,也是构建成熟 REST 服务的核心 Rich 阅读全文
摘要:
第 7 章 高级主题 7.2 并发 当两个用户获取同一个资源后,再同时修改该资源,就会导致并发问题 常见实现并发的方法有以下两种: 保守式并发控制,每次修改资源,都锁定资源 开放式并发控制,每次修改资源,将获取资源时得到的资源散列值一并提交给服务器,判断是否有效,有效则意味着资源未被修改 由于 HT 阅读全文
摘要:
第 7 章 高级主题 7.1 缓存 缓存是一种通过存储资源的备份,在请求时返回资源备份的技术。ASP.NET Core 支持多种形式的缓存,既支持基于 HTTP 的缓存,也支持内存缓存和分布式缓存,还提供响应缓存中间件 HTTP 缓存,服务端返回资源时,能够在响应消息中包含 HTTP 缓存消息头 验 阅读全文
摘要:
第 6 章 高级查询和日志 6.3 排序 RESTful API 在实现排序时应支持对集合资源的一个或多个属性进行排序 示例对 authors 资源按照其属性 Age 升序排序,再按 BirthPlace 属性降序排序:https://localhost:5000/api/authors? orde 阅读全文
摘要:
第 6 章 高级查询和日志 6.1 分页 在 EF Core 中,数据的查询通过集成语言查询(LINQ)实现,它支持强类型,支持对 DbContext 派生类的 DbSet 类型成员进行访问,DbSet 类实现了 IQueryable 和 IEnumerable 接口,LINQ 形式的查询会通过数据 阅读全文
摘要:
第 5 章 使用 Entity Framework Core 5.4 重构 Controller 和 Action 重构 AuthorController 构造函数重构 public IMapper Mapper { get; set; } public IRepositoryWrapper Rep 阅读全文
摘要:
第 5 章 使用 Entity Framework Core 5.3 重构仓储类 创建一个通用仓储接口 namespace Library.API.Services { public interface IRepositoryBase<T> { Task<IEnumerable<T>> GetAll 阅读全文
摘要:
第 5 章 使用 Entity Framework Core 5.1 Entity Framework Core EF Core 是微软推出的 ORM 框架,一种为了解决高级编程语言中的对象和关系型数据库之间映射关系的技术,它能够将程序中的对象自动持久化到关系型数据库中,并能够将数据库中的数据信息自 阅读全文
摘要:
第 4 章 资源操作 4.5 创建资源 由于创建资源的 Id 会在服务端生成,因此在创建资源时,不建议使用与获取数据时相同的 DTO,而要单独创建一个新的 DTO 类,并通过数据注解特性对相应 的属性做限制 namespace Library.API.Models { public class Au 阅读全文
摘要:
第 4 章 资源操作 4.1 项目创建 从本章起,我们将创建一个在线图书馆项目,通过这个 Web API 应用程序来实际地熟悉并掌握如何使用 ASP.NET Core 创建 RESTful API 应用 这个项目由两个实体,作者和图书组成,我们将使用数据传输对象(DTO)来表示这两种资源 新建一个 阅读全文
摘要:
第 3 章 ASP.NET Core 核心特性 3.5 配置 要访问配置,需要使用 ConfigurationBinder 类,它实现了 IConfigurationBuilder 接口,该接口包括两个重要的方法: public interface IConfigurationBuilder { / 阅读全文