ASP.NET Core开发实战

《ASP.NET Core开发实战》

  • 出版社:清华大学出版社
  • ISBN:9787302528876
  • 版次:1
  • 商品编码:12642806
  • 品牌:清华大学出版社(TsinghuaUniversityPress)
  • 包装:平装
  • 开本:16开
  • 出版时间:2019-06-01
  • 用纸:胶版纸
  • 页数:375
  • 字数:508000
基本介绍书籍目录点评信息
  • 书籍内容

    Microsoft MVP Dino Esposito教会你如何:
    ◆ 创建新项目并理解其结构
    ◆ 在ASP.NET Core中设置和使用熟悉的MVC应用程序模型
    ◆ 编写控制器类代码来控制请求处理的所有阶段
    ◆ 从控制器提供HTML,或者直接通过Razor页面提供HTML
    ◆ 掌握Razor语言,以快速定义HTML视图的布局
    ◆ 管理跨领域关注点,如全局配置数据、错误和异常处理、控制器类的设计以及依赖注入
    ◆ 使用用户身份验证和ASP.NET Core的基于策略的用户授权API来保护应用程序安全
    ◆ 设计高效的数据访问,并为读写数据选择合适的选项
    ◆ 构建ASP.NET Core Web API来返回JSON、XML或其他数据
    ◆ 使用数据绑定,以编程方式更新可视化组件
    ◆ 为iOS和Android构建对设备友好的Web视图
    ◆ 探讨全新的ASP.NET Core运行时环境和依赖注入(DI)基础设施

    作者简介

    Dino Esposito是BaxEnergy的一名数字策略师,迄今已经撰写了超过20本图书和1000篇文章。他的编程生涯已有25年。大家都公认,他撰写的图书和文章促进了全世界数千名.NET开发人员和架构师的职业发展。Dino的编程生涯始于1992年,当时他是一名C开发人员。他见证了.NET的问世、Silverlight的兴衰,以及各种架构模式的起起伏伏。他现在很期待人工智能2.0和区块链。他创作了The Sabbatical Break——这是一部戏剧风格的作品,讲述了游历未被污染的想象空间,将软件、文学、科学、体育、技术和艺术融合在一起。可以通过http://youbiquitous.net联系他,也可以访问:
    http://twitter.com/despos
    http://instagram.com/desposofficial
    http://facebook.com/desposofficial
  • 目 录
    第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.NET MVC应用程序模型
    第3章 启动ASP.NET MVC 47
    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.3 ASP.NET MVC的机制 62
    3.3.1 操作调用程序 63
    3.3.2 处理操作结果 64
    3.3.3 操作筛选器 64
    3.4 小结 65
    第4章 ASP.NET MVC控制器 67
    4.1 控制器类 67
    4.1.1 发现控制器的名称 68
    4.1.2 继承的控制器 69
    4.1.3 POCO控制器 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.NET MVC视图 99
    5.1 提供HTML内容 99
    5.1.1 从终止中间件提供HTML 100
    5.1.2 从控制器提供HTML 100
    5.1.3 从Razor页面提供HTML 101
    5.2 视图引擎 102
    5.2.1 调用视图引擎 102
    5.2.2 Razor视图引擎 103
    5.2.3 添加自定义视图引擎 108
    5.2.4 Razor视图的结构 109
    5.3 向视图传递数据 113
    5.3.1 内置的字典 113
    5.3.2 强类型视图模型 116
    5.3.3 通过DI系统注入数据 118
    5.4 Razor页面 118
    5.4.1 引入Razor页面的理由 118
    5.4.2 Razor页面的实现 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.2 Razor标记帮助程序 133
    6.2.1 使用标记帮助程序 133
    6.2.2 内置的标记帮助程序 135
    6.2.3 编写自定义标记帮助程序 138
    6.3 Razor视图组件 141
    6.3.1 编写视图组件 142
    6.3.2 Composition UI模式 143
    6.4 小结 145
    第III部分 跨领域关注点
    第7章 设计考虑 149
    7.1 依赖注入基础结构 149
    7.1.1 进行重构以隔离依赖 149
    7.1.2 ASP.NET Core DI系统概述 152
    7.1.3 DI容器的各个方面 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.1 Web安全基础结构 175
    8.1.1 HTTPS协议 175
    8.1.2 处理安全证书 176
    8.1.3 对HTTPS应用加密 176
    8.2 ASP.NET Core中的身份验证 176
    8.2.1 基于cookie的身份验证 177
    8.2.2 处理多个身份验证方案 179
    8.2.3 建模用户身份 180
    8.2.4 外部身份验证 184
    8.3 通过ASP.NET Identity进行用户身份验证 189
    8.3.1 ASP.NET Identity概述 189
    8.3.2 使用User Manager 193
    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.2 CQRS方法 210
    9.1.3 基础结构层的构成 211
    9.2 .NET Core中的数据访问 212
    9.2.1 Entity Framework 6.x 213
    9.2.2 ADO.NET适配器 215
    9.2.3 使用微型O/RM框架 217
    9.2.4 使用NoSQL存储 219
    9.3 EF Core的常见任务 220
    9.3.1 建模数据库 221
    9.3.2 处理表数据 224
    9.3.3 处理事务 229
    9.3.4 关于异步数据处理 231
    9.4 小结 233
    第IV部分 前端
    第10章 设计Web API 237
    10.1 使用ASP.NET Core构建Web API 237
    10.1.1 公开HTTP端点 238
    10.1.2 文件服务器 240
    10.2 设计RESTful接口 242
    10.2.1 REST简介 242
    10.2.2 在ASP.NET Core
    中使用REST 245
    10.3 保护Web API的安全 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.2 Post-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.1 Mustache.JS库简介 284
    12.2.2 KnockoutJS库简介 288
    12.3 构建Web应用程序的Angular方法 293
    12.4 小结 294
    第13章 构建设备友好的视图 295
    13.1 根据实际设备调整视图 295
    13.1.1 HTML 5在开发设备应用方面的优势 296
    13.1.2 特征检测 298
    13.1.3 客户端设备检测 300
    13.1.4 Client Hints即将问世 303
    13.2 对设备友好的图片 303
    13.2.1 PICTURE元素 303
    13.2.2 ImageEngine平台 305
    13.2.3 自动调整图片大小 305
    13.3 面向设备的开发策略 307
    13.3.1 以客户端为中心的策略 307
    13.3.2 以服务器为中心的策略 311
    13.4 小结 312
    第V部分 ASP.NET Core生态系统
    第14章 ASP.NET Core的运行时环境 315
    14.1 ASP.NET Core的宿主 315
    14.1.1 WebHost类 316
    14.1.2 自定义宿主设置 319
    14.2 内置的HTTP服务器 324
    14.2.1 选择HTTP服务器 324
    14.2.2 配置反向代理 326
    14.2.3 Kestrel的配置参数 329
    14.3 ASP.NET Core的中间件 331
    14.3.1 管道架构 331
    14.3.2 编写中间件组件 333
    14.3.3 打包中间件组件 337
    14.4 小结 339
    第15章 部署ASP.NET Core应用程序 341
    15.1 发布应用程序 341
    15.1.1 在Visual Studio内发布应用程序 342
    15.1.2 使用CLI工具发布应用程序 347
    15.2 部署应用程序 348
    15.2.1 部署到IIS 349
    15.2.2 部署到Microsoft Azure 351
    15.2.3 部署到Linux 355
    15.3 Docker容器 357
    15.3.1 容器与虚拟机 357
    15.3.2 从容器到微服务架构 358
    15.3.3 Docker与Visual Studio 2017 358
    15.4 小结 359
    第16章 迁移和采用策略 361
    16.1 寻找商业价值 361
    16.1.1 寻找益处 362
    16.1.2 brownfield开发 366
    16.1.3 greenfield开发 367
    16.2 yellowfield策略概述 370
    16.2.1 处理缺失的依赖 370
    16.2.2 .NET Portability Analyzer 370
    16.2.3 Windows Compatibility Pack 372
    16.2.4 推迟跨平台挑战 372
    16.2.5 走向微服务架构 373
    16.3 小结 375