《ASP.NET Core开发实战》是由清华大学出版社有限公司在2019年出版的图书,作者是迪诺·埃斯波西托。
基本介绍
- 书名ASP.NET Core开发实战
- 作者[意]迪诺·埃斯波西托(Dino Esposito)
- 译者赵利通
- 类别9787302528876
- 页数375页
- 定价79.80元
- 出版社清华大学出版社
- 出版时间2019年7月1日
- 装帧平装
- 印次1-1
- 印刷日期2019年6月6日
图书简介
◆ 创建新项目并理解其结构
◆ 在ASP.NETCore中设定和使用熟悉的MVC应用程式模型
◆ 编写控制器类代码来控制请求处理的所有阶段
◆ 从控制器提供HTML,或者直接通过Razor页面提供HTML
◆ 掌握Razor语言,以快速定义HTML视图的布局
◆ 管理跨领域关注点,如全局配置数据、错误和异常处理、控制器类的设计以及依赖注入
◆ 使用用户身份验证和ASP.NETCore的基于策略的用户授权API来保护应用程式安全
◆ 设计高效的数据访问,并为读写数据选择合适的选项
◆ 构建ASP.NETCoreWebAPI来返回JSON、XML或其他数据
◆ 使用数据绑定,以编程方式更新可视化组件
◆ 为iOS和Android构建对设备友好的Web视图
◆ 探讨全新的ASP.NETCore运行时环境和依赖注入(DI)基础设施
图书目录
第I部分 新ASP.NET一览
第1章 为什幺又开发一个ASP.NET 3
1.1 .NET平台现状 4
1.1.1 .NET平台的亮点 4
1.1.2 .NET Framework 4
1.1.3 ASP.NET Framework 5
1.1.4 Web API框架 6
1.1.5 对极简Web服务的需求 7
1.2 15年过去后的.NET 7
1.2.1 更简洁的.NET Framework 8
1.2.2 将ASP.NET与宿主解耦 9
1.2.3 新的ASP.NET Core 10
1.3 .NET Core的命令行工具 10
1.3.1 安装CLI工具 10
1.3.2 dotnet驱动程式工具 11
1.3.3 dotnet的预定义命令 12
1.4 小结 13
第2章 第一个ASP.NET Core项目 15
2.1 ASP.NET Core项目的分析 15
2.1.1 项目结构 16
2.1.2 与运行时环境互动 22
2.2 依赖注入子系统 27
2.2.1 依赖注入一览 27
2.2.2 ASP.NET Core中的依赖注入 29
2.2.3 与外部DI库集成 31
2.3 构建极简网站 33
2.3.1 创建单端点网站 34
2.3.2 访问Web伺服器上的档案 40
2.4 小结 44
第II部分ASP.NETMVC应用程式模型
第3章启动ASP.NETMVC47
3.1启用MVC应用程式模型47
3.1.1注册MVC服务48
3.1.2启用传统路由50
3.2配置路由表53
3.2.1路由的剖析54
3.2.2路由的高级方面59
3.3ASP.NETMVC的机制62
3.3.1操作调用程式63
3.3.2处理操作结果64
3.3.3操作筛选器64
3.4小结65
第4章ASP.NETMVC控制器67
4.1控制器类67
4.1.1发现控制器的名称68
4.1.2继承的控制器69
4.1.3POCO控制器70
4.2控制器操作73
4.2.1将操作映射到方法73
4.2.2基于特性的路由77
4.3实现操作方法80
4.3.1基本数据获取80
4.3.2模型绑定82
4.3.3操作结果88
4.4操作筛选器91
4.4.1操作筛选器的剖析91
4.4.2操作筛选器的小集合94
4.5小结97
第5章ASP.NETMVC视图99
5.1提供HTML内容99
5.1.1从终止中间件提供HTML100
5.1.2从控制器提供HTML100
5.1.3从Razor页面提供HTML101
5.2视图引擎102
5.2.1调用视图引擎102
5.2.2Razor视图引擎103
5.2.3添加自定义视图引擎108
5.2.4Razor视图的结构109
5.3向视图传递数据113
5.3.1内置的字典113
5.3.2强类型视图模型116
5.3.3通过DI系统注入数据118
5.4Razor页面118
5.4.1引入Razor页面的理由118
5.4.2Razor页面的实现119
5.4.3从Razor页面提交数据120
5.5小结122
第6章Razor语法123
6.1语法元素123
6.1.1处理代码表达式124
6.1.2布局模板128
6.1.3分部视图131
6.2Razor标记帮助程式133
6.2.1使用标记帮助程式133
6.2.2内置的标记帮助程式135
6.2.3编写自定义标记帮助程式138
6.3Razor视图组件141
6.3.1编写视图组件142
6.3.2CompositionUI模式143
6.4小结145
第III部分跨领域关注点
第7章设计考虑149
7.1依赖注入基础结构149
7.1.1进行重构以隔离依赖149
7.1.2ASP.NETCoreDI系统概述152
7.1.3DI容器的各个方面155
7.1.4在层中注入数据和服务156
7.2收集配置数据157
7.2.1支持的数据提供程式158
7.2.2构建配置文档对象模型160
7.2.3传递配置数据162
7.3分层架构164
7.3.1表示层165
7.3.2套用层167
7.3.3领域层167
7.3.4基础结构层168
7.4处理异常168
7.4.1异常处理中间件168
7.4.2异常筛选器171
7.4.3记录异常173
7.5小结174
第8章应用程式安全175
8.1Web安全基础结构175
8.1.1HTTPS协定175
8.1.2处理安全证书176
8.1.3对HTTPS套用加密176
8.2ASP.NETCore中的身份验证176
8.2.1基于cookie的身份验证177
8.2.2处理多个身份验证方案179
8.2.3建模用户身份180
8.2.4外部身份验证184
8.3通过ASP.NETIdentity进行用户身份验证189
8.3.1ASP.NETIdentity概述189
8.3.2使用UserManager193
8.4授权策略197
8.4.1基于角色的授权198
8.4.2基于策略的授权201
8.5小结206
第9章访问应用程式数据207
9.1创建相对通用的应用程式后端208
9.1.1整体式应用程式208
9.1.2CQRS方法210
9.1.3基础结构层的构成211
9.2.NETCore中的数据访问212
9.2.1EntityFramework6.x213
9.2.2ADO.NET适配器215
9.2.3使用微型O/RM框架217
9.2.4使用NoSQL存储219
9.3EFCore的常见任务220
9.3.1建模资料库221
9.3.2处理表数据224
9.3.3处理事务229
9.3.4关于异步数据处理231
9.4小结233
第IV部分前端
第10章设计WebAPI237
10.1使用ASP.NETCore构建WebAPI237
10.1.1公开HTTP端点238
10.1.2档案伺服器240
10.2设计RESTful接口242
10.2.1REST简介242
10.2.2在ASP.NETCore
中使用REST245
10.3保护WebAPI的安全248
10.3.1只计画真正需要的安全性249
10.3.2较为简单的访问控制方法250
10.3.3使用身份管理伺服器251
10.4小结258
第11章从客户端提交数据259
11.1组织HTML表单259
11.1.1定义HTML表单260
11.1.2Post-Redirect-Get模式263
11.2通过JavaScript提交表单266
11.2.1上传表单内容266
11.2.2刷新当前萤幕的一部分270
11.2.3将档案上传到Web伺服器272
11.3小结275
第12章客户端数据绑定277
12.1通过HTML刷新视图277
12.1.1準备工作278
12.1.2定义可刷新区域278
12.1.3综合运用278
12.2通过JSON刷新视图284
12.2.1Mustache.JS库简介284
12.2.2KnockoutJS库简介288
12.3构建Web应用程式的Angular方法293
12.4小结294
第13章构建设备友好的视图295
13.1根据实际设备调整视图295
13.1.1HTML5在开发设备套用方面的优势296
13.1.2特徵检测298
13.1.3客户端设备检测300
13.1.4ClientHints即将问世303
13.2对设备友好的图片303
13.2.1PICTURE元素303
13.2.2ImageEngine平台305
13.2.3自动调整图片大小305
13.3面向设备的开发策略307
13.3.1以客户端为中心的策略307
13.3.2以伺服器为中心的策略311
13.4小结312
第V部分ASP.NETCore生态系统
第14章ASP.NETCore的运行时环境315
14.1ASP.NETCore的宿主315
14.1.1WebHost类316
14.1.2自定义宿主设定319
14.2内置的HTTP伺服器324
14.2.1选择HTTP伺服器324
14.2.2配置反向代理326
14.2.3Kestrel的配置参数329
14.3ASP.NETCore的中间件331
14.3.1管道架构331
14.3.2编写中间件组件333
14.3.3打包中间件组件337
14.4小结339
第15章部署ASP.NETCore应用程式341
15.1发布应用程式341
15.1.1在VisualStudio内发布应用程式342
15.1.2使用CLI工具发布应用程式347
15.2部署应用程式348
15.2.1部署到IIS349
15.2.2部署到MicrosoftAzure351
15.2.3部署到Linux355
15.3Docker容器357
15.3.1容器与虚拟机357
15.3.2从容器到微服务架构358
15.3.3Docker与VisualStudio2017358
15.4小结359
第16章迁移和採用策略361
16.1寻找商业价值361
16.1.1寻找益处362
16.1.2brownfield开发366
16.1.3greenfield开发367
16.2yellowfield策略概述370
16.2.1处理缺失的依赖370
16.2.2.NETPortabilityAnalyzer370
16.2.3WindowsCompatibilityPack372
16.2.4推迟跨平台挑战372
16.2.5走向微服务架构373
16.3小结375