《ASP.NET Core 6框架揭秘》实例演示列表
2023-09-14 09:02:18 时间
章节 | 编码 | 摘要 | |
1 | 01 | S101 | 执行命令行“dotnet new”创建控制台程序 |
2 | S102 | 采用Minimal API构建ASP.NET程序 | |
3 | S103 | 一步创建WebApplication对象 | |
4 | S104 | 使用原始形态的中间件 | |
5 | S105 | 使用中间件委托变体(1) | |
6 | S106 | 使用中间件委托变体(2) | |
7 | S107 | 定义强类型中间件类型 | |
8 | S108 | 定义基于约定的中间件类型(构造函数注入) | |
9 | S109 | 定义基于约定的中间件类型(方法注入) | |
10 | S110 | 配置的应用 | |
11 | S111 | Options的应用 | |
12 | S112 | 日志的应用 | |
13 | S113 | 路由的应用 | |
14 | S114 | 开发MVC API | |
15 | S115 | 开发MVC APP | |
16 | S116 | 开发gRPC API | |
17 | S117 | Dapr-服务调用 | |
18 | S118 | Dapr-状态管理 | |
19 | S119 | Dapr-发布订阅 | |
20 | S120 | Dapr-Actor模型 | |
21 | 02 | S201 | 模拟容器Cat-普通服务的注册和提取 |
22 | S202 | 模拟容器Cat-针对泛型服务类型的支持 | |
23 | S203 | 模拟容器Cat-为同一类型提供多个服务注册 | |
24 | S204 | 模拟容器Cat-服务实例的生命周期 | |
25 | 03 | S301 | 普通服务的注册和提取 |
26 | S302 | 针对泛型服务类型的支持 | |
27 | S303 | 为同一类型提供多个服务注册 | |
28 | S304 | 服务实例的生命周期 | |
29 | S305 | 服务实例的释放回收 | |
30 | S306 | 服务范围的验证 | |
31 | S307 | 服务注册有效性的验证 | |
32 | S308 | 构造函数的选择(成功) | |
33 | S309 | 构造函数的选择(失败) | |
34 | S310 | IDisposable和IAsyncDisposable接口的差异(错误编程) | |
35 | S311 | IDisposable和IAsyncDisposable接口的差异(正确编程) | |
36 | S312 | 利用ActivatorUtilities提供服务实例 | |
37 | S313 | ActivatorUtilities针对构造函数的“评分” | |
38 | S314 | ActivatorUtilities针对构造函数的选择 | |
39 | S315 | ActivatorUtilitiesConstructorAttribute特性的应用 | |
40 | S316 | 与Cat框架的整合 | |
41 | 04 | S401 | 输出文件系统目录结构 |
42 | S402 | 读取物理文件内容 | |
43 | S403 | 读取内嵌文件内容 | |
44 | S404 | 监控文件的变更 | |
45 | 05 | S501 | 以键值对形式读取配置 |
46 | S502 | 读取结构化配置 | |
47 | S503 | 将结构化配置绑定为对象 | |
48 | S504 | 将配置定义在JSON文件中 | |
49 | S505 | 根据环境动态加载配置文件 | |
50 | S506 | 配置内容的实时同步 | |
51 | S507 | 绑定配置项的值 | |
52 | S508 | 类型转换器在配置绑定中的应用 | |
53 | S509 | 复合对象的配置绑定 | |
54 | S510 | 集合的配置绑定 | |
55 | S511 | 集合和数组的配置绑定的差异 | |
56 | S512 | 字典的配置绑定 | |
57 | S513 | 环境变量的配置源 | |
58 | S514 | 命令行参数的配置源 | |
59 | 06 | S601 | 将配置绑定为Options对象 |
60 | S602 | 具名Options的注册和提取 | |
61 | S603 | Options与配置源的实时同步(匿名Options) | |
62 | S604 | Options与配置源的实时同步(具名Options) | |
63 | S605 | 用代码方式初始化Options(匿名Options) | |
64 | S606 | 用代码方式初始化Options(具名Options) | |
65 | S607 | 针对依赖服务的Options设置 | |
66 | S608 | 验证Options的有效性 | |
67 | S609 | IOptions<TOptions>和IOptionsSnapshot<TOptions>的差异 | |
68 | 07 | S701 | TraceSource跟踪日志 |
69 | S702 | 基于等级的日志过滤 | |
70 | S703 | 自定义面向控制台的TraceListener | |
71 | S704 | EventSource事件日志 | |
72 | S705 | 自定义EventListener监听事件 | |
73 | S706 | DiagnosticListener诊断日志 | |
74 | S707 | 为DiagnosticListener注册强类型订阅者 | |
75 | S708 | DefaultTraceListener针对文件的日志输出 | |
76 | S709 | 利用DelimitedListTraceListener将日志输出到CSV文件 | |
77 | S710 | 更加完整的EventListener类型定义 | |
78 | S711 | 利用EventSource的事件日志输出调用链 | |
79 | S712 | AnonymousObserver<T>的应用 | |
80 | S713 | 强类型诊断事件订阅 | |
81 | 08 | S801 | 将日志输出到控制台和调试窗口 |
82 | S802 | 利用ILoggerFactory工厂创建Ilogger<T>对象 | |
83 | S803 | 注入Ilogger<T>对象 | |
84 | S804 | TraceSource和EventSource的日志输出 | |
85 | S805 | 针对等级的日志过滤 | |
86 | S806 | 针对等级和类别的日志过滤 | |
87 | S807 | 针对等级、类别和ILoggerProvider类型的日志过滤 | |
88 | S808 | 利用配置定义日志过滤规则 | |
89 | S809 | 利用日志范围输出调用链 | |
90 | S810 | LoggerMessage的应用 | |
91 | S811 | Activity的采样策略 | |
92 | S812 | 基于Activity的日志范围 | |
93 | 09 | S901 | SimpleConsoleFormatter格式化器 |
94 | S902 | SystemdConsoleFormatter格式化器 | |
95 | S903 | JsonConsoleFormatter格式化器 | |
96 | S904 | 改变ConsoleLogger的标准输出和错误输出 | |
97 | S905 | 自定义控制台日志的格式化器 | |
98 | S906 | 利用EventListener收集EventSourceLogger输出的日志 | |
99 | S907 | EventSourceLogger针对日志范围的支持 | |
100 | 10 | S1001 | 对象池基本使用方式 |
101 | S1002 | 利用注入的ObjectPoolProvider提供对象池 | |
102 | S1003 | 自定义对象池化策略 | |
103 | S1004 | 对象池的容量与并发的关系(容量不小于并发量) | |
104 | S1005 | 对象池的容量与并发的关系(容量小于并发量) | |
105 | S1006 | 池化对象的释放 | |
106 | S1007 | 池化集合对象 | |
107 | S1008 | 池化StringBuilder | |
108 | S1009 | ArrayPool<T>的应用 | |
109 | S1010 | MemoryPool<T>的应用 | |
110 | 11 | S1101 | 基于内存的本地缓存 |
111 | S1102 | 基于Redis的分布式缓存 | |
112 | S1103 | 基于SQL Server的分布式缓存 | |
113 | S1104 | 基于文件的更变的缓存过期策略 | |
114 | S1105 | 缓存压缩 | |
115 | S1106 | Redis分布式缓存的过期实现 | |
116 | 12 | S1201 | 频繁创建HttpClient对象调用API |
117 | S1202 | 以单例方式使用HttpClient | |
118 | S1203 | 利用IHttpClientFactory工厂创建HttpClient对象 | |
119 | S1204 | 直接注入HttpClient对象 | |
120 | S1205 | 定制HttpClient对象 | |
121 | S1206 | 强类型客户端 | |
122 | S1207 | 基于Polly的失败重试 | |
123 | S1208 | HttpClient的默认管道结构 | |
124 | S1209 | 定制HttpClient管道 | |
125 | S1210 | 针对HTTP调用的日志输出(>=Information) | |
126 | S1211 | 针对HTTP调用的日志输出(>=Trace) | |
127 | S1212 | 在日志中过滤报头 | |
128 | S1213 | SuppressHandlerScope设置针对服务实例生命周期的影响(False) | |
129 | S1214 | SuppressHandlerScope设置针对服务实例生命周期的影响(True) | |
130 | 13 | S1301 | 数据的加解密 |
131 | S1302 | Purpose字符串一致性 | |
132 | S1303 | 设置加密内容的有效期 | |
133 | S1304 | 撤销加密密钥(单个密钥) | |
134 | S1305 | 撤销加密密钥(所有密钥) | |
135 | S1306 | 瞬时加解密 | |
136 | S1307 | 密钥哈希 | |
137 | S1308 | 基于本地文件系统的密钥管理(密钥创建) | |
138 | S1309 | 基于本地文件系统的密钥管理(密钥撤销) | |
139 | 14 | S1401 | 利用承载服务收集性能指标 |
140 | S1402 | 依赖注入的应用 | |
141 | S1403 | 配置选项的应用 | |
142 | S1404 | 提供针对环境的配置 | |
143 | S1405 | 日志的应用 | |
144 | S1406 | 在配置中定义日志过滤规则 | |
145 | S1407 | 利用IHostApplicationLifetime对象关闭应用 | |
146 | S1408 | 与第三方依赖注入框架的整合 | |
147 | S1409 | 利用配置初始化承载环境 | |
148 | 15 | S1501 | 基于IWebHost/IWebHostBuilder的应用承载方式 |
149 | S1502 | 将初始化设置定义在Startup类型中 | |
150 | S1503 | 基于IHost/IHostBuilder的应用承载方式 | |
151 | S1504 | Minimal API的方式承载应用 | |
152 | S1505 | 以Func<RequestDelegate, RequestDelegate>形式定义中间件 | |
153 | S1506 | 定义强类型中间件类型 | |
154 | S1507 | 定义基于约定的中间件类型 | |
155 | S1508 | 查看默认注册的服务 | |
156 | S1509 | 中间件类型的构造函数注入 | |
157 | S1510 | 中间件类型的方法注入 | |
158 | S1511 | 服务实例的周期 | |
159 | S1512 | 针对服务范围的验证 | |
160 | S1513 | 基于环境变量的配置初始化 | |
161 | S1514 | 以键值对形式读取和修改配置 | |
162 | S1515 | 注册配置源(利用IWebHostBuilder) | |
163 | S1516 | 注册配置源(推荐方式) | |
164 | S1517 | 默认的承载环境 | |
165 | S1518 | 通过配置定制承载环境 | |
166 | S1519 | 利用WebApplicationOptions定制承载环境 | |
167 | 16 | S1601 | Mini版的ASP.NET框架 |
168 | 17 | S1701 | ASP.NET针对请求的诊断日志 |
169 | S1702 | 收集DiagnosticSource输出的日志 | |
170 | S1703 | 收集EventSource输出的日志 | |
171 | S1704 | 模拟Mininal API的实现 | |
172 | 18 | S1801 | 自定义服务器 |
173 | S1802 | 两种终结点的选择 | |
174 | S1803 | 模拟KestrelServer的实现 | |
175 | S1804 | 基于In-Process模式的IIS部署 | |
176 | S1805 | 基于Out-of-Process模式的IIS部署 | |
177 | 19 | S1901 | 以Web形式发布文件(图片) |
178 | S1902 | 以Web形式发布文件(PDF) | |
179 | S1903 | 显式文件目录结构 | |
180 | S1904 | 显示目录的默认页面 | |
181 | S1905 | 定制目录的默认页面 | |
182 | S1906 | 设置默认的媒体类型 | |
183 | S1907 | 映射文件扩展名的媒体类型 | |
184 | S1908 | 改变目录结构的呈现方式 | |
185 | 20 | S2001 | 注册路由终结点 |
186 | S2002 | 以内联方式设置路由参数的约束 | |
187 | S2003 | 定义可缺省的路由参数 | |
188 | S2004 | 为路由参数指定默认值 | |
189 | S2005 | 一个路径分段定义多个路由参数 | |
190 | S2006 | 一个路由参数跨越多个路径分段 | |
191 | S2007 | 主机名绑定 | |
192 | S2008 | 将终结点处理定义为任意类型的委托 | |
193 | S2009 | IResult 的应用 | |
194 | S2010 | 解析路由模式 | |
195 | S2011 | 利用多个中间件来构建终结点处理器 | |
196 | S2012 | 在参数上标注特性来决定绑定的数据源 | |
197 | S2013 | 默认的参数绑定规则 | |
198 | S2014 | 针对TryParse方法的参数绑定 | |
199 | S2015 | 针对BindAsync方法的参数绑定 | |
200 | S2016 | 自定义路由约束 | |
201 | 21 | S2101 | 开发者异常页面的呈现 |
202 | S2102 | 定制异常页面的呈现 | |
203 | S2103 | 利用注册的中间件处理异常 | |
204 | S2104 | 针对异常页面的重定向 | |
205 | S2105 | 基于响应状态码错误页面的呈现(设置响应内容模板) | |
206 | S2106 | 基于响应状态码错误页面的呈现(提供异常处理器) | |
207 | S2107 | 基于响应状态码错误页面的呈现(利用中间件创建异常处理器) | |
208 | S2108 | 利用IDeveloperPageExceptionFilter定制开发者异常页面 | |
209 | S2109 | 针对编译异常的处理(默认) | |
210 | S2110 | 针对编译异常的处理(定义源代码输出行数) | |
211 | S2111 | 利用IExceptionHandlerFeature特性提供错误信息 | |
212 | S2112 | 清除缓存响应报头 | |
213 | S2113 | 针对404响应的处理 | |
214 | S2114 | 利用IStatusCodePagesFeature特性忽略异常处理 | |
215 | S2115 | 针对错误页面的客户端重定向 | |
216 | S2116 | 针对错误页面的服务端重定向 | |
217 | 22 | S2201 | 基于路径的响应缓存 |
218 | S2202 | 基于指定的查询字符串缓存响应 | |
219 | S2203 | 基于指定的请求报头缓存响应 | |
220 | 23 | S2301 | 设置和提取会话状态 |
221 | S2302 | 查看存储的会话状态 | |
222 | 24 | S2401 | 构建HTTPS站点 |
223 | S2402 | HTTPS终结点重定向 | |
224 | S2403 | 注册HstsMiddleware中间件 | |
225 | S2404 | 设置HSTS配置选项 | |
226 | 25 | S2501 | 客户端重定向 |
227 | S2502 | 服务端重定向 | |
228 | S2503 | 采用IIS重写规则实现重定向 | |
229 | S2504 | 采用Apache重写规则实现重定向 | |
230 | S2505 | 基于HTTPS终结点的重定向 | |
231 | 26 | S2601 | 设置并发和等待请求阈值 |
232 | S2602 | 基于队列的限流策略 | |
233 | S2603 | 基于栈的限流策略 | |
234 | S2604 | 处理被拒绝的请求 | |
235 | 27 | S2701 | 采用极简程序实现登录、认证和注销 |
236 | 28 | S2801 | 基于“要求”的授权 |
237 | S2802 | 基于“策略”的授权 | |
238 | S2803 | 将“角色”绑定到路由终结点 | |
239 | S2804 | 将“授权策略”绑定到路由终结点 | |
240 | 29 | S2901 | 跨域调用API |
241 | S2902 | 显式指定授权Origin列表 | |
242 | S2903 | 手工检验指定Origin是否的权限 | |
243 | S2904 | 基于策略的资源授权(匿名策略) | |
244 | S2905 | 基于策略的资源授权(具名策略) | |
245 | S2906 | 将CORS规则应用到路由终结点上(代码编程形式) | |
246 | S2907 | 将CORS规则应用到路由终结点上(特性标注形式) | |
247 | 30 | S3001 | 确定应用可用状态 |
248 | S3002 | 定制健康检查逻辑 | |
249 | S3003 | 改变健康状态对应的响应状态码 | |
250 | S3004 | 提供细粒度的健康检查 | |
251 | S3005 | 定制健康报告响应内容 | |
252 | S3006 | IHealthCheck对象的过滤 | |
253 | S3007 | 定期发布健康报告 |
相关文章
- asp.net C#数据导出Excel实例介绍
- asp.net输出重写压缩页面文件实例
- .Net配置文件——反射+配置文件存储类型实例
- ASP.NET Core 6框架揭秘实例演示[25]:配置与承载环境的应用
- ASP.NET Core 6框架揭秘实例演示[24]:中间件的多种定义方式
- ASP.NET Core 6框架揭秘实例演示[19]:数据加解密与哈希
- ASP.NET Core 6框架揭秘实例演示[18]:HttpClient处理管道
- ASP.NET Core 6框架揭秘实例演示[10]:Options基本编程模式
- ASP.NET Core 6框架揭秘实例演示[08]:配置的基本编程模式
- ASP.NET Web API自身对CORS的支持:从实例开始
- .net stream 转成 bytes[] 的实例和注意事项