- ISBN:9787302479901
- 装帧:一般胶版纸
- 册数:暂无
- 重量:暂无
- 开本:26cm
- 页数:11,364页
- 出版时间:2017-09-01
- 条形码:9787302479901 ; 978-7-302-47990-1
本书特色
动手掌握ASP.NET Core从架构到部署的方方面面《ASP.NET Core应用开发》通过一个跨平台Web应用程序 的开发、部署与管理的完整流程,指导你学习ASP.NET Core。 你将掌握微软革命性的开源ASP.NET Core技术,并学习如 何将MVC、Docker、Azure Web Apps、Visual Studio、C#、 JavaScript和Entity Framework融汇贯通。通过与一个虚拟的 Alpine Ski House开发团队并肩工作,你将见证四个全新迭代的 完整开发过程。你将看到这个团队是如何架构和设计他们的软 件,响应用户的反馈,以及完成开发、测试、部署、维护和重 构等各个环节的工作。*终,你将了解如何更快、更稳定地创建一流水准的软件。 三位*微软MVP展示了如何: ◆ 使用ASP.NET Core和开源框架构建强大的跨平台应用程序 ◆ 超越MVC,构建一个完整的ASP.NET Core应用程序 ◆ 从项目开始的*天就开始生成并发布版本,快速部署迭 代中的产品 ◆ 集成Azure支持,获得云服务的扩展能力 ◆ 在Linux上运行或开发跨平台的解决方案 ◆ 使用Docker获得一致的开发环境 ◆ 使用Entity Framework Core 1.0访问数据 ◆ 使用更新的Razor视图引擎生成HTML视图 ◆ 使用身份确保安全性和提供权限管理 ◆ 使用依赖注入提高可测试性与可维护性 ◆ 在ASP.NET Core环境中使用和管理JavaScript ◆ 使用SASS编写可维护的靓丽CSS ◆ 充分利用标签助手和其他可重用组件 ◆ 设计、组织并重构应用程序,灵活应对变化
内容简介
本书包含四个部分, 共分24章, 详细而又全面地介绍了如何使用ASP.NET Core构建、部署和管理跨平台的Web应用的整个过程。读者将掌握微软具有创新性的开源ASP.NET Core技术, 并学会如何将MVC、Docker、Azure Web Apps、Visual Studio、C#、JavaScript和Entity Framework的强大功能整合在一起。
目录
Web应用程序 71 7.1 平台即服务 72 7.1.1 平台服务 72 7.1.2 搭建、删除和重建你的
服务 74 7.2 使用平台服务生成应用程序 75 7.2.1 创建一个存储账号 76 7.2.2 在Blob Containers中存储
图片 77 7.2.3 使用存储队列 79 7.2.4 使用Azure WebJobs进行
自动处理 79 7.3 扩展你的应用程序 81 7.3.1 多方位扩展 81 7.3.2 弹性扩展 81 7.3.3 扩展性上的考虑 83 7.4 本章小结 84 第8章 跨平台 85 8.1 在Ubuntu上运行 86 8.1.1 安装.NET Core 86 8.1.2 dotnet CLI 86 8.2 选择代码编辑器 89 8.3 Linux上的Alpine Ski House 89 8.4 .NET Core 92 8.5 本章小结 95 第9章 容器 97 9.1 可重复的环境 98 9.2 Docker 101 9.3 Windows容器 105 9.4 生产环境中的Docker 107 9.5 在云端 108 9.6 本章小结 109 第10章 Entity Framework Core 111 10.1 Entity Framework的基础
知识 112 10.1.1 查询单条记录 114 10.1.2 查询多条记录 114 10.1.3 保存数据 115 10.1.4 跟踪修改 115 10.1.5 使用迁移创建和更新
数据库 116 10.2 ApplicationDbContext 122 10.3 SkiCardContext 125 10.3.1 跨越上下文边界的
关联 126 10.3.2 连接控制器 128 10.4 门票类型 133 10.5 门票与验证 135 10.6 本章小结 139 第11章 Razor视图 141 11.1 今天,开发人员如何
创建网站 142 11.1.1 学习之前的成功经验 142 11.1.2 理解Razor的角色 143 11.2 掌握Razor的本质 143 11.2.1 幕后揭秘 143 11.2.2 使用Razor语法编写
表达式 145 11.2.3 切换到代码 146 11.2.4 显式使用标记 147 11.2.5 Razor解析器的控制符
速查表 148 11.3 使用更多C#功能 148 11.3.1 在视图中使用C#类型 148 11.3.2 定义模型 149 11.3.3 使用视图数据 149 11.4 使用布局 151 11.4.1 布局基础 151 11.4.2 在视图中包含部件 153 11.4.3 定义和使用局部视图 153 11.5 使用Razor高级功能增强
视图 154 11.5.1 在视图中注入服务 154 11.5.2 使用标签助手 155 11.5.3 避免视图重复 158 11.6 使用其他视图引擎 159 11.7 本章小结 159 第12章 配置和日志 161 12.1 抛弃web.config 162 12.1.1 配置你的应用程序 162 12.1.2 使用现成的配置提供
程序 164 12.1.3 创建自定义配置提供
程序 165 12.1.4 使用选项模式 167 12.2 作为一等公民的日志 168 12.2.1 创建清晰明确的日志 169 12.2.2 关于异常信息的设置 170 12.2.3 作为部署策略的日志
记录 171 12.2.4 ASP.NET Core中的日志
级别 171 12.2.5 使用日志作用域增强
日志功能 174 12.2.6 使用结构化日志框架 176 12.2.7 日志即服务
(Logging as a Service) 178 12.3 本章小结 179 第?Ⅲ部分 迭代回顾:激流勇进 第13章 身份标识、安全与权限
管理 185 13.1 纵深防御 185 13.1.1 内部威胁 186 13.1.2 外部威胁 187 13.2 用户密钥 187 13.3 ASP.NET Core MVC中的
标识管理 193 13.4 其他第三方认证提供程序 198 13.5 使用策略进行授权 202 13.5.1 全局应用策略 202 13.5.2 为选择的用户定义
策略 202 13.5.3 自定义授权策略 204 13.5.4 保护资源 205 13.5.5 跨域资源共享(CORS) 208 13.6 本章小结 209 第14章 依赖注入 211 14.1 什么是依赖注入 212 14.1.1 手工解析依赖 212 14.1.2 使用服务容器解析
依赖 213 14.2 ASP.NET Core中的依赖
注入 214 14.2.1 使用内置容器 215 14.2.2 使用第三方容器 217 14.3 本章小结 219 第15章 JavaScript的地位 221 15.1 编写优雅的JavaScript 222 15.2 我们是否需要JavaScript 223 15.3 组织 223 15.4 是否要实现单页面
应用(SPA) 224 15.5 构建JavaScript 225 15.5.1 Bundler & Minifier 225 15.5.2 Grunt 227 15.5.3 gulp 228 15.5.4 WebPack 230 15.5.5 哪个工具更适合我 232 15.6 TypeScript 232 15.6.1 ES2015到ES5的
编译器 233 15.6.2 类型系统 234 15.7 模块加载 236 15.8 选择一个框架 237 15.9 本章小结 238 第16章 依赖项管理 241 16.1 NuGet 242 16.2 npm 244 16.2.1 添加依赖项 245 16.2.2 使用npm模块 245 16.2.3 与Visual Studio的
集成 246 16.3 Yarn 247 16.4 Bower 249 16.4.1 添加依赖项 250 16.4.2 引用Bower程序包中的
资源 250 16.5 本章小结 251 第17章 前端与样式 253 17.1 使用样式表构建网站 254 17.1.1 回首往事 254 17.1.2 创建自己的样式表 256 17.2 使样式更时髦 257 17.2.1 SCSS基础 258 17.2.2 创建Mixin 262 17.2.3 组合Mixin和指令 263 17.3 建立开发工作流 263 17.3.1 使用命令行工具 264 17.3.2 结合Visual Studio Code 264 17.3.3 修改项目的生成任务 264 17.4 使用第三方框架 265 17.4.1 扩展CSS框架 266 17.4.2 自定义CSS框架的
基本面 266 17.4.3 在自定义样式表中利用
CSS框架 267 17.4.4 CSS框架的替代品 268 17.5 本章小结 268 第18章 缓存 269 18.1 缓存控制(Cache-Control)头 270 18.2 使用Data-Cache 273 18.2.1 内存缓存 273 18.2.2 分布式缓存 274 18.3 缓存的限度 276 18.4 本章小结 276 第?Ⅳ部分 迭代回顾:*后冲刺 第19章 可重用组件 279 19.1 标签助手 280 19.1.1 一个标签助手的组成
部分 280 19.1.2 Script/Link/Environment
标签助手 280 19.1.3 cache标签助手 282 19.1.4 创建标签助手 283 19.2 视图组件 286 19.2.1 调用视图组件 287 19.2.2 联系客户服务视图
组件 287 19.3 局部视图 289 19.4 本章小结 290 第20章 测试 291 20.1 单元测试 291 20.1.1 xUnit 292 20.1.2 JavaScript测试 304 20.2 其他测试类型 308 20.3 本章小结 308 第21章 可扩展性 309 21.1 约定 310 21.2 中间件 312 21.2.1 配置管道 312 21.2.2 编写自己的中间件 314 21.2.3 管道分支 315 21.3 加载外部的控制器和视图 316 21.3.1 从外部项目中加载
视图 317 21.3.2 从外部程序集中加载
控制器 317 21.4 路由 318 21.4.1 特性路由 319 21.4.2 高级路由 320 21.5 dotnet工具 320 21.6 JavaScript服务和同构
应用程序 321 21.6.1 同构应用程序 321 21.6.2 Node服务 322 21.7 本章小结 322 第22章 国际化 323 22.1 可本地化的文本 325 22.1.1 字符串本地化 325 22.1.2 视图本地化 328 22.1.3 数据修饰特性 328 22.1.4 共享资源文件 329 22.2 设置当前的区域性 330 22.3 本章小结 333 第23章 重构,改善代码质量 335 23.1 什么是重构 336 23.2 测量质量 337 23.3 寻找重构时机 338 23.4 安全重构 339 23.5 数据驱动修改 346 23.6 代码清理示例 346 23.7 工具来相助 350 23.8 收获品质 351 23.9 本章小结 351 第24章 组织代码 353 24.1 仓库结构 354 24.2 源代码内的结构 354 24.3 平行结构 355 24.4 MediatR 356 24.4.1 消息模式简介 356 24.4.2 实现中介者模式 357 24.5 区域 360 24.6 本章小结 361 后记 363
作者简介
作者简介 James Chambers,五次荣获开发人员技术方向微软MVP称号,现在正在开发运行于Azure和AWS之上的ASP.NET Core和MVC应用程序。他是一位独立咨询师、技术导师、活跃的博客作者,并为多个开源项目贡献自己的力量。 David Paquette,四次荣获微软MVP称号,是一位软件开发人员和独立咨询师。他具有使用.NET构建Web和Windows应用程序的丰富经验,对软件工程领域有深入的了解,同时对提高用户体验颇具热情。 Simon Timms,一位多次荣获微软MVP称号的社区组织者、博客作家、开发者和独立咨询师。他在技术领域兴趣广泛,从分布式系统到新的JavaScript框架无所不包。他在软件开发和运维上都具备深厚功力,这也使得他的团队热衷于生成、开发服务器部署等方面。
-
Excel数据处理与分析(八品)
¥15.6¥59.8 -
全图解零基础word excel ppt 应用教程
¥16.3¥48.0 -
C Primer Plus 第6版 中文版
¥61.6¥108.0 -
零信任网络:在不可信网络中构建安全系统
¥36.6¥59.0 -
硅谷之火-人与计算机的未来
¥12.7¥39.8 -
情感计算
¥71.2¥89.0 -
大模型RAG实战 RAG原理、应用与系统构建
¥69.3¥99.0 -
大学计算机基础实验教程(MS Office版)——面向数据分析能力培养
¥29.1¥39.8 -
LINUX企业运维实战(REDIS+ZABBIX+NGINX+PROMETHEUS+GRAFANA+LNMP)
¥55.2¥69.0 -
AI虚拟数字人:商业模式+形象创建+视频直播+案例应用
¥65.6¥89.8 -
LINUX实战——从入门到精通
¥49.0¥69.0 -
剪映AI
¥52.8¥88.0 -
快速部署大模型:LLM策略与实践(基于ChatGPT等大语言模型)
¥56.9¥79.0 -
数据驱动的工业人工智能:建模方法与应用
¥68.3¥99.0 -
数据存储架构与技术(第2版)
¥62.9¥89.8 -
纹样之美:中国传统经典纹样速查手册
¥76.3¥109.0 -
UN NX 12.0多轴数控编程案例教程
¥24.3¥38.0 -
实战知识图谱
¥48.3¥69.0 -
做好课题申报:AI辅助申请书写作
¥48.9¥69.8 -
Go 语言运维开发 : Kubernetes 项目实战
¥38.7¥79.0