ASP.NET Core开发实战
《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 31.1 .NET平台现状 41.1.1 .NET平台的亮点 41.1.2 .NET Framework 41.1.3 ASP.NET Framework 51.1.4 Web API框架 61.1.5 对极简Web服务的需求 71.2 15年过去后的.NET 71.2.1 更简洁的.NET Framework 81.2.2 将ASP.NET与宿主解耦 91.2.3 新的ASP.NET Core 101.3 .NET Core的命令行工具 101.3.1 安装CLI工具 101.3.2 dotnet驱动程式工具 111.3.3 dotnet的预定义命令 121.4 小结 13第2章 第一个ASP.NET Core项目 152.1 ASP.NET Core项目的分析 152.1.1 项目结构 162.1.2 与运行时环境互动 222.2 依赖注入子系统 272.2.1 依赖注入一览 272.2.2 ASP.NET Core中的依赖注入 292.2.3 与外部DI库集成 312.3 构建极简网站 332.3.1 创建单端点网站 342.3.2 访问Web伺服器上的档案 402.4 小结 44第II部分ASP.NETMVC应用程式模型第3章启动ASP.NETMVC473.1启用MVC应用程式模型473.1.1注册MVC服务483.1.2启用传统路由503.2配置路由表533.2.1路由的剖析543.2.2路由的高级方面593.3ASP.NETMVC的机制623.3.1操作调用程式633.3.2处理操作结果643.3.3操作筛选器643.4小结65第4章ASP.NETMVC控制器674.1控制器类674.1.1发现控制器的名称684.1.2继承的控制器694.1.3POCO控制器704.2控制器操作734.2.1将操作映射到方法734.2.2基于特性的路由774.3实现操作方法804.3.1基本数据获取804.3.2模型绑定824.3.3操作结果884.4操作筛选器914.4.1操作筛选器的剖析914.4.2操作筛选器的小集合944.5小结97第5章ASP.NETMVC视图995.1提供HTML内容995.1.1从终止中间件提供HTML1005.1.2从控制器提供HTML1005.1.3从Razor页面提供HTML1015.2视图引擎1025.2.1调用视图引擎1025.2.2Razor视图引擎1035.2.3添加自定义视图引擎1085.2.4Razor视图的结构1095.3向视图传递数据1135.3.1内置的字典1135.3.2强类型视图模型1165.3.3通过DI系统注入数据1185.4Razor页面1185.4.1引入Razor页面的理由1185.4.2Razor页面的实现1195.4.3从Razor页面提交数据1205.5小结122第6章Razor语法1236.1语法元素1236.1.1处理代码表达式1246.1.2布局模板1286.1.3分部视图1316.2Razor标记帮助程式1336.2.1使用标记帮助程式1336.2.2内置的标记帮助程式1356.2.3编写自定义标记帮助程式1386.3Razor视图组件1416.3.1编写视图组件1426.3.2CompositionUI模式1436.4小结145第III部分跨领域关注点第7章设计考虑1497.1依赖注入基础结构1497.1.1进行重构以隔离依赖1497.1.2ASP.NETCoreDI系统概述1527.1.3DI容器的各个方面1557.1.4在层中注入数据和服务1567.2收集配置数据1577.2.1支持的数据提供程式1587.2.2构建配置文档对象模型1607.2.3传递配置数据1627.3分层架构1647.3.1表示层1657.3.2套用层1677.3.3领域层1677.3.4基础结构层168
7.4处理异常1687.4.1异常处理中间件1687.4.2异常筛选器1717.4.3记录异常1737.5小结174第8章应用程式安全1758.1Web安全基础结构1758.1.1HTTPS协定1758.1.2处理安全证书1768.1.3对HTTPS套用加密1768.2ASP.NETCore中的身份验证1768.2.1基于cookie的身份验证1778.2.2处理多个身份验证方案1798.2.3建模用户身份1808.2.4外部身份验证1848.3通过ASP.NETIdentity进行用户身份验证1898.3.1ASP.NETIdentity概述1898.3.2使用UserManager1938.4授权策略1978.4.1基于角色的授权1988.4.2基于策略的授权2018.5小结206第9章访问应用程式数据2079.1创建相对通用的应用程式后端2089.1.1整体式应用程式2089.1.2CQRS方法2109.1.3基础结构层的构成2119.2.NETCore中的数据访问2129.2.1EntityFramework6.x2139.2.2ADO.NET适配器2159.2.3使用微型O/RM框架2179.2.4使用NoSQL存储2199.3EFCore的常见任务2209.3.1建模资料库2219.3.2处理表数据2249.3.3处理事务2299.3.4关于异步数据处理2319.4小结233第IV部分前端第10章设计WebAPI23710.1使用ASP.NETCore构建WebAPI23710.1.1公开HTTP端点23810.1.2档案伺服器24010.2设计RESTful接口24210.2.1REST简介24210.2.2在ASP.NETCore中使用REST24510.3保护WebAPI的安全24810.3.1只计画真正需要的安全性24910.3.2较为简单的访问控制方法25010.3.3使用身份管理伺服器25110.4小结258第11章从客户端提交数据25911.1组织HTML表单25911.1.1定义HTML表单26011.1.2Post-Redirect-Get模式26311.2通过JavaScript提交表单26611.2.1上传表单内容26611.2.2刷新当前萤幕的一部分27011.2.3将档案上传到Web伺服器27211.3小结275第12章客户端数据绑定27712.1通过HTML刷新视图27712.1.1準备工作27812.1.2定义可刷新区域278
12.1.3综合运用27812.2通过JSON刷新视图28412.2.1Mustache.JS库简介28412.2.2KnockoutJS库简介28812.3构建Web应用程式的Angular方法29312.4小结294第13章构建设备友好的视图29513.1根据实际设备调整视图29513.1.1HTML5在开发设备套用方面的优势29613.1.2特徵检测29813.1.3客户端设备检测30013.1.4ClientHints即将问世30313.2对设备友好的图片30313.2.1PICTURE元素30313.2.2ImageEngine平台30513.2.3自动调整图片大小30513.3面向设备的开发策略30713.3.1以客户端为中心的策略30713.3.2以伺服器为中心的策略31113.4小结312第V部分ASP.NETCore生态系统第14章ASP.NETCore的运行时环境31514.1ASP.NETCore的宿主31514.1.1WebHost类31614.1.2自定义宿主设定31914.2内置的HTTP伺服器32414.2.1选择HTTP伺服器32414.2.2配置反向代理32614.2.3Kestrel的配置参数32914.3ASP.NETCore的中间件33114.3.1管道架构33114.3.2编写中间件组件33314.3.3打包中间件组件33714.4小结339第15章部署ASP.NETCore应用程式34115.1发布应用程式34115.1.1在VisualStudio内发布应用程式34215.1.2使用CLI工具发布应用程式34715.2部署应用程式34815.2.1部署到IIS34915.2.2部署到MicrosoftAzure35115.2.3部署到Linux35515.3Docker容器35715.3.1容器与虚拟机35715.3.2从容器到微服务架构35815.3.3Docker与VisualStudio201735815.4小结359第16章迁移和採用策略36116.1寻找商业价值36116.1.1寻找益处36216.1.2brownfield开发36616.1.3greenfield开发36716.2yellowfield策略概述37016.2.1处理缺失的依赖37016.2.2.NETPortabilityAnalyzer37016.2.3WindowsCompatibilityPack37216.2.4推迟跨平台挑战372
16.2.5走向微服务架构37316.3小结375