互联网
类型
可以朗读
语音朗读
251千字
字数
2020-12-01
发行日期
展开全部
主编推荐语
涵盖WebAPI、实时通信、WebAssembly、AI工程化等多种场景,深入剖析核心组件的设计理念。
内容简介
本书从ASP.NET Core的核心组件入手,延伸到MVC、Web API、SignalR(实时通信应用)、Blazor(wasm应用)、机器学习等多种应用,全方位地讲解ASP.NET Core的应用场景、开发实践、部署和发布,带领你学习从开发到发布基于ASP.NET Core的项目的全过程。
本书主要面向对C#语法和Web开发有一定了解、期望使用C#语言开发Web项目的初学者,以及具有ASP.NET MVC开发经验、希望通过ASP.NET Core获得跨平台和容器化开发能力的开发者。
目录
- 版权信息
- 前言
- 第1章 为什么选择ASP.NET Core
- 1.1 什么是.NET
- 1.2 ASP.NET Core的特点
- 1.3 读者能从本书学到什么
- 第2章 ASP.NET Core开发工具安装
- 2.1 .NET Core SDK安装
- 2.1.1 获取.NET Core SDK
- 2.1.2 安装.NET Core SDK
- 2.2 Visual Studio Code安装
- 2.2.1 获取Visual Studio Code
- 2.2.2 安装Visual Studio Code
- 2.2.3 更新Visual Studio Code
- 2.3 Visual Studio 2019安装
- 2.3.1 确保计算机可以安装Visual Studio
- 2.3.2 获取Visual Studio
- 2.3.3 安装Visual Studio安装程序
- 2.3.4 启动安装程序
- 第3章 ASP.NET Core核心组件详解
- 3.1 框架总述
- 3.2 依赖注入
- 3.2.1 什么是依赖注入
- 3.2.2 依赖注入组件
- 3.2.3 服务描述类ServiceDescriptor
- 3.2.4 IServiceCollection与服务注册
- 3.2.5 通过IServiceProvider获取服务实例
- 3.2.6 作用域与生命周期
- 3.2.7 IDisposable与生命周期
- 3.2.8 扩展接口IServiceProviderFactory<TContainerBuilder>
- 3.2.9 在Controller中获取服务
- 3.3 配置组件
- 3.3.1 配置组件的构造过程
- 3.3.2 内存配置提供程序
- 3.3.3 命令行配置提供程序
- 3.3.4 环境变量配置提供程序
- 3.3.5 文件配置提供程序
- 3.3.6 Key-per-file配置提供程序
- 3.3.7 使用IConfiguration读取配置
- 3.3.8 使用强类型接收配置
- 3.4 选项组件
- 3.4.1 选项的注入与使用
- 3.4.2 使用命名选项
- 3.4.3 验证选项
- 3.4.4 选项后期配置
- 3.5 中间件
- 3.5.1 注册中间件
- 3.5.2 常用的内置中间件
- 3.6 路由与终结点
- 3.6.1 注册终结点
- 3.6.2 路由模板
- 3.6.3 特性路由
- 3.6.4 路由约束
- 3.6.5 生成链接
- 第4章 基于MVC设计模式的Web应用
- 4.1 创建第一个ASP.NET Core MVC项目
- 4.2 什么是MVC模式
- 4.3 视图
- 4.3.1 使用视图的好处
- 4.3.2 创建视图
- 4.3.3 利用控制器指定视图
- 4.3.4 视图发现
- 4.3.5 向视图传递数据
- 4.3.6 动态视图
- 4.4 部分视图
- 4.4.1 何时使用部分视图
- 4.4.2 声明部分视图
- 4.4.3 引用部分视图
- 4.4.4 呈现部分视图
- 4.4.5 通过部分视图访问数据
- 4.5 控制器
- 4.5.1 什么是控制器
- 4.5.2 Action
- 4.5.3 横切关注点
- 4.6 路由
- 4.6.1 自定义路由
- 4.6.2 混合路由
- 4.6.3 动态路由
- 4.7 区域
- 4.8 筛选器
- 4.8.1 筛选器的工作原理
- 4.8.2 实现
- 4.9 模型绑定器
- 4.9.1 什么是模型绑定
- 4.9.2 目标
- 4.9.3 源
- 4.9.4 不存在模型属性的源
- 4.9.5 类型转换错误
- 4.9.6 复杂类型
- 4.9.7 集合
- 4.9.8 字典
- 4.9.9 模型绑定路由数据和URL字符串参数的全局行为
- 4.9.10 特殊数据类型
- 4.9.11 输入格式化程序
- 4.9.12 从模型绑定中排除指定类型
- 4.9.13 手动模型绑定
- 第5章 基于ASP.NET Core的Web API
- 5.1 创建ASP.NET Core的Web API项目
- 5.2 带有Swagger的Web API帮助页
- 5.2.1 Swashbuckle.AspNetCore
- 5.2.2 Swagger规范
- 5.2.3 Swagger UI
- 5.3 ASP.NET Core Web API中控制器的返回类型
- 5.3.1 特定类型
- 5.3.2 IActionResult类型
- 5.3.3 ActionResult <T>类型
- 5.4 Web API约定
- 5.4.1 应用Web API约定
- 5.4.2 创建Web API约定
- 第6章 ASP.NET Core中的数据库访问
- 6.1 Entity Framework Core
- 6.2 安装并运行MySQL
- 6.2.1 启动MySQL
- 6.2.2 创建数据库
- 6.3 数据库访问
- 6.3.1 添加数据库上下文
- 6.3.2 创建控制器
- 6.4 .NET Core Dapper
- 第7章 安全与身份认证
- 7.1 身份认证
- 7.1.1 身份认证处理程序
- 7.1.2 身份认证方案
- 7.1.3 身份认证服务
- 7.1.4 身份认证中间件
- 7.1.5 添加基于策略的身份认证方案
- 7.1.6 用户信息模型
- 7.1.7 添加自定义身份认证处理程序
- 7.2 授权
- 7.2.1 简单授权
- 7.2.2 基于角色的授权
- 7.2.3 基于策略的授权
- 7.2.4 授权中间件
- 7.2.5 授权处理程序
- 7.2.6 自定义授权处理程序
- 7.3 集成IdentityServer4
- 7.4 数据保护
- 7.4.1 数据保护入门
- 7.4.2 用户机密管理
- 7.4.3 小结
- 7.5 强制HTTPS
- 7.5.1 RequireHttpsAttribute
- 7.5.2 HTTPS重定向中间件
- 7.5.3 HTTP严格传输安全协议
- 7.6 防跨站请求伪造
- 7.6.1 什么是跨站请求伪造
- 7.6.2 同步令牌模式
- 7.7 防开放重定向攻击
- 7.8 防跨站脚本
- 7.8.1 防范跨站脚本攻击
- 7.8.2 使用Razor的HTML编码
- 7.8.3 使用Razor的JavaScript编码
- 7.8.4 小结
- 7.9 跨域请求
- 7.9.1 跨域资源共享
- 7.9.2 启用CORS中间件
- 7.9.3 配置需要CORS的资源路径
- 7.9.4 小结
- 第8章 基于SignalR开发实时通信应用
- 8.1 基于SignalR的实时通信
- 8.1.1 数据交互传输
- 8.1.2 Hub中心
- 8.2 服务端实现
- 8.2.1 创建和使用Hub
- 8.2.2 启用SignalR
- 8.2.3 上下文对象Context
- 8.2.4 Clients对象
- 8.2.5 向客户端发送消息
- 8.2.6 处理连接事件
- 8.2.7 用户和组
- 8.2.8 服务的可扩展实现
- 8.3 客户端实现
- 8.3.1 创建connection对象
- 8.3.2 使用on添加客户端方法
- 8.3.3 使用start开始连接服务端
- 8.3.4 使用invoke调用服务端方法
- 8.3.5 自动连接
- 8.3.6 手动重连
- 第9章 基于Blazor的Web客户端技术
- 9.1 Blazor的应用模型
- 9.2 创建项目
- 9.3 页面路由
- 9.4 数据绑定
- 9.5 组件
- 9.5.1 模板化组件
- 9.5.2 组件库
- 9.6 状态管理
- 第10章 日志与监控
- 10.1 日志组件
- 10.1.1 日志类别
- 10.1.2 日志级别
- 10.1.3 日志对象与依赖注入
- 10.1.4 事件ID
- 10.1.5 使用日志模板
- 10.1.6 日志作用域
- 10.1.7 筛选日志输出
- 10.2 健康检查组件
- 10.2.1 注册健康检查
- 10.2.2 配置健康检查终结点
- 10.2.3 自定义健康检查项
- 10.2.4 检查结果发布器
- 第11章 远程调用
- 11.1 使用HttpClient调用远程API
- 11.1.1 构造HttpClient
- 11.1.2 发出请求
- 11.1.3 设置代理
- 11.1.4 处理Cookie
- 11.2 使用HttpClientFactory机制管理HttpClient
- 11.2.1 注册并使用HttpClientFactory
- 11.2.2 使用命名客户端
- 11.2.3 使用类型化客户端
- 11.2.4 使用ConfigureHttpClient
- 11.2.5 使用ConfigurePrimaryHttpMessageHandler
- 11.2.6 理解生命周期
- 11.2.7 HTTP请求管道
- 11.2.8 使用ConfigureHttpMessageHandlerBuilder
- 11.2.9 关于请求日志
- 11.3 使用gRPC实现高性能远程调用
- 11.3.1 定义接口描述
- 11.3.2 配置服务端
- 11.3.3 配置客户端
- 11.3.4 使用dotnet-grpc命令行工具管理.proto文件引用
- 第12章 部署ASP.NET Core应用
- 12.1 部署到IIS中
- 12.1.1 概述
- 12.1.2 下载和安装ASP.NET Core模块
- 12.1.3 部署到IIS站点
- 12.2 部署为Windows Service
- 12.2.1 配置应用
- 12.2.2 安装和运行服务
- 12.3 部署到Linux中
- 12.3.1 安装.NET运行时
- 12.3.2 部署应用
- 12.3.3 反向代理
- 12.4 部署到Docker中
- 12.4.1 Docker简介
- 12.4.2 Docker术语
- 12.4.3 生成和制作Dockerfile
- 12.4.4 生成镜像
- 12.4.5 部署镜像
- 12.5 高可用架构
- 12.5.1 概述
- 12.5.2 应用本身的高可用保障
- 第13章 ASP.NET Core高级内容
- 13.1 文件提供程序
- 13.1.1 访问本地物理文件系统
- 13.1.2 监视文件的变化
- 13.2 请求功能接口
- 13.3 URL重写
- 13.3.1 重写规则
- 13.3.2 IRule接口
- 13.3.3 小结
- 13.4 缓存
- 13.4.1 缓存标记帮助程序
- 13.4.2 内存缓存和分布式缓存
- 第14章 结合ML.NET实现机器学习应用
- 14.1 机器学习简介
- 14.1.1 什么是机器学习
- 14.1.2 机器学习的作用
- 14.1.3 机器学习的分类
- 14.1.4 机器学习的典型步骤
- 14.2 ML.NET简介
- 14.3 ML.NET特色功能
- 14.4 ML.NET开发环境搭建
- 14.4.1 安装ML.NET库
- 14.4.2 安装Microsoft.ML.TimeSeries与Microsoft.ML.AutoML
- 14.4.3 安装ML.NET模型生成器
- 14.4.4 安装ML.NET命令行接口工具
- 14.5 ML.NET快速上手
- 14.5.1 构建模型阶段
- 14.5.2 使用模型阶段
- 14.6 ML.NET与ONNX实践
- 14.6.1 准备事项
- 14.6.2 创建控制台应用程序
- 14.6.3 准备数据和预训练的模型
- 14.6.4 定义输入和输出数据结构
- 14.6.5 定义评分预测类
- 14.6.6 使用模型进行分析和输出
- 第15章 更多的学习途径
- 15.1 .NET Core的学习途径
- 15.2 其他需要关注的技术
展开全部
出版方
机械工业出版社有限公司
机械工业出版社是全国优秀出版社,自1952年成立以来,坚持为科技、为教育服务,以向行业、向学校提供优质、权威的精神产品为宗旨,以“服务社会和人民群众需求,传播社会主义先进文化”为己任,产业结构不断完善,已由传统的图书出版向着图书、期刊、电子出版物、音像制品、电子商务一体化延伸,现已发展为多领域、多学科的大型综合性出版社,涉及机械、电工电子、汽车、计算机、经济管理、建筑、ELT、科普以及教材、教辅等领域。