计算机
类型
可以朗读
语音朗读
577千字
字数
2020-05-01
发行日期
展开全部
主编推荐语
《ASP.NET Core 3框架揭秘》:深入学习ASP.NET Core基础、实战技巧及项目发布部署。
内容简介
《ASP.NET Core 3框架揭秘》深入浅出地介绍了ASP.NET Core 基础及实战方面的知识,主要有.NET Core 的基础知识及安装、dotnet 命令、ASP.NET Core 开发工具操作及使用、ASP.NET Core 原理和组件介绍、ASP.NET Core MVC 框架学习、ASP.NET Core Web API 学习和扩展Web API 输出格式,以及.NETCore 单元测试,最后以一个完整的项目结尾,并讲解了项目的发布和部署。他还为想要构建生产解决方案(包括用于移动设备的解决方案)的每个开发人员提供了完整的学习路径。通过这本书你可以学会如何创建新项目并理解其结构、在ASP.NET Core中设置和使用熟悉的MVC应用程序模型、编写控制器类代码来控制请求处理的所有阶段、从控制器提供HTML,或者直接通过Razor页面提供HTML等内容。
目录
- 封面
- 版权页
- 前言
- 目录
- 第1章 全新的开发体验
- 1.1 Windows平台
- 1.1.1 构建开发环境
- 1.1.2 利用命令行创建.NET Core应用
- 1.1.3 ASP.NET Core应用
- 1.1.4 ASP.NET Core MVC应用
- 1.2 macOS用户
- 1.2.1 构建开发环境
- 1.2.2 利用命令行创建.NET Core应用
- 1.2.3 ASP.NET Core MVC应用
- 1.3 Linux
- 1.3.1 启用Linux子系统
- 1.3.2 构建开发环境
- 1.3.3 利用命令行创建ASP.NET Core应用
- 1.4 Docker
- 第2章 跨平台的奥秘
- 2.1 历史的枷锁
- 2.1.1 Windows下的.NET
- 2.1.2 非Windows下的.NET
- 2.2 复用之伤
- 2.2.1 源代码复用
- 2.2.2 程序集复用
- 2.3 全新的布局
- 2.3.1 跨平台的.NET Core
- 2.3.2 统一的BCL
- 2.3.3 展望未来
- 第3章 依赖注入(上篇)
- 3.1 控制反转
- 3.1.1 流程控制的反转
- 3.1.2 好莱坞法则
- 3.1.3 流程定制
- 3.2 IoC模式
- 3.2.1 模板方法
- 3.2.2 工厂方法
- 3.2.3 抽象工厂
- 3.3 依赖注入
- 3.3.1 由容器提供对象
- 3.3.2 3种依赖注入方式
- 3.3.3 Service Locator模式
- 3.4 一个简易版的依赖注入容器
- 3.4.1 编程体验
- 3.4.2 设计与实现
- 3.4.3 扩展方法
- 第4章 依赖注入(下篇)
- 4.1 利用容器提供服务
- 4.1.1 服务的注册与消费
- 4.1.2 生命周期
- 4.1.3 针对服务注册的验证
- 4.2 服务注册
- 4.2.1 ServiceDescriptor
- 4.2.2 IServiceCollection
- 4.3 服务的消费
- 4.3.1 IServiceProvider
- 4.3.2 服务实例的创建
- 4.3.3 生命周期
- 4.4 实现概览
- 4.4.1 ServiceProviderEngine和ServiceProviderEngineScope
- 4.4.2 ServiceProvider
- 4.4.3 注入IServiceProvider对象
- 4.5 扩展
- 4.5.1 适配
- 4.5.2 IServiceProviderFactory<TContainerBuilder>
- 4.5.3 整合第三方依赖注入框架
- 第5章 文件系统
- 5.1 抽象的文件系统
- 5.1.1 树形层次结构
- 5.1.2 读取文件内容
- 5.1.3 监控文件的变化
- 5.2 设计详解
- 5.2.1 IChangeToken
- 5.2.2 IFileProvider
- 5.2.3 PhysicalFileProvider
- 5.2.4 EmbeddedFileProvider
- 5.2.5 两个特殊的IFileProvider实现
- 5.3 远程文件系统
- 5.3.1 HttpFileInfo与HttpDirectoryContents
- 5.3.2 HttpFileProvider
- 5.3.3 FileProviderMiddleware
- 5.3.4 远程文件系统的应用
- 第6章 配置选项(上篇)
- 6.1 读取配置信息
- 6.1.1 配置编程模型三要素
- 6.1.2 以键值对的形式读取配置
- 6.1.3 读取结构化的配置
- 6.1.4 将结构化配置直接绑定为对象
- 6.1.5 将配置定义在文件中
- 6.2 配置模型
- 6.2.1 数据结构及其转换
- 6.2.2 IConfiguration
- 6.2.3 IConfigurationProvider
- 6.2.4 IConfigurationSource
- 6.2.5 IConfigurationBuilder
- 6.3 配置绑定
- 6.3.1 绑定配置项的值
- 6.3.2 绑定复合数据类型
- 6.3.3 绑定集合对象
- 6.3.4 绑定字典
- 6.4 配置的同步
- 6.4.1 配置数据流
- 6.4.2 ConfigurationReloadToken
- 6.4.3 ConfigurationRoot
- 6.4.4 ConfigurationSection
- 6.5 多样性的配置源
- 6.5.1 MemoryConfigurationSource
- 6.5.2 EnvironmentVariablesConfigurationSource
- 6.5.3 CommandLineConfigurationSource
- 6.5.4 FileConfigurationSource
- 6.5.5 StreamConfigurationSource
- 6.5.6 ChainedConfigurationSource
- 6.5.7 自定义ConfigurationSource(S616)
- 第7章 配置选项(下篇)
- 7.1 Options模式
- 7.1.1 将配置绑定为Options对象
- 7.1.2 提供具名的Options
- 7.1.3 配置源的同步
- 7.1.4 直接初始化Options对象
- 7.1.5 根据依赖服务的Options设置
- 7.1.6 验证Options的有效性
- 7.2 Options模型
- 7.2.1 OptionsManager<TOptions>
- 7.2.2 IOptionsFactory<TOptions>
- 7.2.3 IOptionsMonitorCache<TOptions>
- 7.2.4 IOptionsMonitor<TOptions>
- 7.3 依赖注入
- 7.3.1 服务注册
- 7.3.2 IOptions<TOptions>与IOptionsSnapshot<TOptions>
- 7.3.3 扩展与定制
- 7.3.4 集成配置系统
- 第8章 诊断日志(上篇)
- 8.1 各种诊断日志形式
- 8.1.1 调试日志
- 8.1.2 跟踪日志
- 8.1.3 事件日志
- 8.1.4 诊断日志
- 8.2 Debugger调试日志
- 8.2.1 Debugger
- 8.2.2 Debug
- 8.3 TraceSource跟踪日志
- 8.3.1 跟踪日志模型三要素
- 8.3.2 预定义TraceListener
- 8.3.3 Trace
- 8.4 EventSource事件日志
- 8.4.1 EventSource
- 8.4.2 EventListener
- 8.4.3 荷载对象序列化
- 8.4.4 活动跟踪
- 8.4.5 性能计数
- 8.5 DiagnosticSource诊断日志
- 8.5.1 标准的观察者模式
- 8.5.2 AnonymousObschmerver<T>
- 8.5.3 强类型的事件订阅
- 8.5.4 针对活动的跟踪
- 第9章 诊断日志(下篇)
- 9.1 统一日志编程模式
- 9.1.1 将日志输出到不同的渠道
- 9.1.2 日志过滤
- 9.1.3 日志范围
- 9.1.4 LoggerMessage
- 9.2 日志模型详解
- 9.2.1 日志模型三要素
- 9.2.2 ILogger
- 9.2.3 日志范围
- 9.2.4 ILoggerProvider
- 9.2.5 ILoggerFactory
- 9.2.6 LoggerMessage
- 9.3 依赖注入
- 9.3.1 服务注册
- 9.3.2 设置日志过滤规则
- 9.4 日志输出渠道
- 9.4.1 控制台
- 9.4.2 调试器
- 9.4.3 TraceSource日志
- 9.4.4 EventSource日志
- 第10章 承载系统
- 10.1 服务承载
- 10.1.1 承载长时间运行服务
- 10.1.2 依赖注入
- 10.1.3 配置选项
- 10.1.4 承载环境
- 10.1.5 日志
- 10.2 承载模型
- 10.2.1 IHostedService
- 10.2.2 IHost
- 10.2.3 IHostBuilder
- 10.3 实现原理
- 10.3.1 服务宿主
- 10.3.2 针对配置系统的设置
- 10.3.3 针对依赖注入框架的设置
- 10.3.4 创建宿主
- 10.3.5 静态类型Host
- 第11章 管道(上篇)
- 11.1 管道式的请求处理
- 11.1.1 两个承载体系
- 11.1.2 请求处理管道
- 11.1.3 中间件
- 11.1.4 定义强类型中间件
- 11.1.5 按照约定定义中间件
- 11.2 依赖注入
- 11.2.1 服务注册
- 11.2.2 服务的消费
- 11.2.3 生命周期
- 11.2.4 集成第三方依赖注入框架
- 11.3 配置
- 11.3.1 初始化配置
- 11.3.2 以键值对形式读取和修改配置
- 11.3.3 合并配置
- 11.3.4 注册IConfigurationSource
- 11.4 承载环境
- 11.4.1 IWebHostEnvironment
- 11.4.2 通过配置定制承载环境
- 11.4.3 针对环境的编程
- 11.5 初始化
- 11.5.1 Startup
- 11.5.2 IHostingStartup
- 11.5.3 IStartupFilter
- 第12章 管道(中篇)
- 12.1 中间件委托链
- 12.1.1 HttpContext
- 12.1.2 中间件
- 12.1.3 中间件管道的构建
- 12.2 服务器
- 12.2.1 IServer
- 12.2.2 针对服务器的适配
- 12.2.3 HttpListenerServer
- 12.3 承载服务
- 12.3.1 WebHostedService
- 12.3.2 WebHostBuilder
- 12.3.3 应用构建
- 第13章 管道(下篇)
- 13.1 请求上下文
- 13.1.1 HttpContext
- 13.1.2 服务器适配
- 13.1.3 获取上下文
- 13.1.4 上下文的创建与释放
- 13.1.5 RequestServices
- 13.2 IServer+IHttpApplication
- 13.2.1 IServer
- 13.2.2 HostingApplication
- 13.2.3 诊断日志
- 13.3 中间件委托链
- 13.3.1 IApplicationBuilder
- 13.3.2 弱类型中间件
- 13.3.3 强类型中间件
- 13.3.4 注册中间件
- 13.4 应用的承载
- 13.4.1 GenericWebHostServiceOptions
- 13.4.2 GenericWebHostService
- 13.4.3 GenericWebHostBuilder
- 13.4.4 ConfigureWebHostDefaults
- 附录A 实例演示1
- 第14章 静态文件
- 14.1 搭建文件服务器
- 14.1.1 发布物理文件
- 14.1.2 呈现目录结构
- 14.1.3 显示默认页面
- 14.1.4 映射媒体类型
- 14.2 处理文件请求
- 14.2.1 条件请求
- 14.2.2 区间请求
- 14.2.3 StaticFileMiddleware
- 14.3 处理目录请求
- 14.3.1 DirectoryBrowserMiddleware
- 14.3.2 DefaultFilesMiddleware
- 第15章 路由
- 15.1 路由映射
- 15.1.1 路由注册
- 15.1.2 设置内联约束
- 15.1.3 默认路由参数
- 15.1.4 特殊的路由参数
- 15.2 终结点的解析与执行
- 15.2.1 路由模式
- 15.2.2 终结点
- 15.2.3 中间件
- 15.3 路由约束
- 15.3.1 预定义的IRouteConstraint
- 15.3.2 InlineConstraintResolver
- 15.3.3 自定义约束
- 第16章 异常处理
- 16.1 呈现错误信息
- 16.1.1 显示开发者异常页面
- 16.1.2 显示定制异常页面
- 16.1.3 针对响应状态码定制错误页面
- 16.2 开发者异常页面
- 16.2.1 IDeveloperPageExceptionFilter
- 16.2.2 显示编译异常信息
- 16.2.3 DeveloperExceptionPageMiddleware
- 16.3 异常处理器
- 16.3.1 ExceptionHandlerMiddleware
- 16.3.2 异常的传递与请求路径的恢复
- 16.3.3 清除缓存
- 16.4 响应状态码页面
- 16.4.1 StatusCodePagesMiddleware
- 16.4.2 阻止处理异常
- 16.4.3 注册StatusCodePagesMiddleware中间件
- 第17章 缓存
- 17.1 将数据缓存起来
- 17.1.1 将数据缓存在内存中
- 17.1.2 对数据进行分布式缓存
- 17.1.3 缓存整个HTTP响应
- 17.2 本地内存缓存
- 17.2.1 ICacheEntry
- 17.2.2 MemoryCacheEntryOptions
- 17.2.3 IMemoryCache
- 17.3 分布式缓存
- 17.3.1 IDistributedCache
- 17.3.2 基于Redis的分布式缓存
- 17.3.3 基于SQL Server的分布式缓存
- 17.4 响应缓存
- 17.4.1 HTTP/1.1 Caching
- 17.4.2 ResponseCachingMiddleware中间件
- 17.4.3 注册中间件
- 第18章 会话
- 18.1 利用会话保留“语境”
- 18.1.1 设置和提取会话状态
- 18.1.2 查看存储的会话状态
- 18.1.3 查看Cookie
- 18.2 会话状态的读写
- 18.2.1 ISession
- 18.2.2 DistributedSession
- 18.2.3 ISessionStore
- 18.3 SessionMiddleware中间件
- 18.3.1 SessionOptions
- 18.3.2 ISessionFeature
- 18.3.3 SessionMiddleware
- 第19章 认证
- 19.1 认证、登录与注销
- 19.1.1 认证票据
- 19.1.2 基于Cookie的认证
- 19.1.3 应用主页
- 19.1.4 登录与注销
- 19.2 身份与用户
- 19.2.1 IIdentity
- 19.2.2 IPrincipal
- 19.3 认证模型
- 19.3.1 认证票据
- 19.3.2 认证处理器
- 19.3.3 认证服务
- 19.3.4 服务注册
- 19.3.5 AuthenticationMiddleware
- 19.4 Cookie认证方案
- 19.4.1 AuthenticationHandler<TOptions>
- 19.4.2 CookieAuthenticationHandler
- 19.4.3 注册CookieAuthenticationHandler
- 第20章 授权
- 20.1 基于角色的权限控制
- 20.1.1 用户与角色的映射
- 20.1.2 根据角色授权
- 20.1.3 预定义授权策略
- 20.2 基于“要求”的授权
- 20.2.1 IAuthorizationRequirement
- 20.2.2 预定义的IAuthorizationRequirement实现类型
- 20.2.3 授权检验
- 20.3 基于“策略”的授权
- 20.3.1 授权策略的构建
- 20.3.2 授权策略的注册
- 20.3.3 授权检验
- 第21章 跨域资源共享
- 21.1 处理跨域资源
- 21.1.1 跨域调用API
- 21.1.2 资源提供者显式授权
- 21.1.3 基于策略的资源授权
- 21.2 CORS规范
- 21.2.1 同源策略
- 21.2.2 针对资源的授权
- 21.2.3 获取授权的方式
- 21.2.4 用户凭证
- 21.3 CORS模型
- 21.3.1 CORS策略
- 21.3.2 解析并应用授权结果
- 21.3.3 CorsMiddleware中间件
- 第22章 本地化
- 22.1 提供本地化消息文本
- 22.1.1 提供对应语种的文本
- 22.1.2 自动设置语言文化
- 22.1.3 将本地化文本分而治之
- 22.1.4 直接注入IStringLocalizer<T>
- 22.2 文本本地化
- 22.2.1 字符串本地化模型
- 22.2.2 基于JSON文件的本地化
- 22.2.3 基于资源文件的本地化
- 22.3 当前语言文化的设置
- 22.3.1 Culture与UICulture
- 22.3.2 IRequestCultureProvider
- 22.3.3 RequestLocalizationOptions
- 22.3.4 RequestLocalizationMiddleware
- 第23章 健康检查
- 23.1 检查应用的健康状况
- 23.1.1 确定当前应用是否可用
- 23.1.2 定制健康检查逻辑
- 23.1.3 改变响应状态码
- 23.1.4 细粒度的健康检查
- 23.1.5 定制响应内容
- 23.1.6 过滤IHealthCheck对象
- 23.2 设计与实现
- 23.2.1 IHealthCheck
- 23.2.2 HealthCheckService
- 23.2.3 HealthCheckMiddleware
- 23.2.4 针对Entity Framework Core的健康检查
- 23.3 发布健康报告
- 23.3.1 定期发布健康报告
- 23.3.2 IHealthCheckPublisher
- 23.3.3 HealthCheckPublisherHostedService
- 第24章 补遗
- 24.1 过滤主机名
- 24.1.1 实例演示
- 24.1.2 配置选项
- 24.1.3 HostFilteringMiddleware中间件
- 24.2 HTTP重写
- 24.2.1 实例演示
- 24.2.2 HttpMethodOverrideMiddleware中间件
- 24.2.3 ForwardedHeadersMiddleware中间件
- 24.3 基础路径
- 24.3.1 实例演示
- 24.3.2 UsePathBaseMiddleware
- 24.4 路由
- 24.4.1 实例演示
- 24.4.2 MapMiddleware
- 24.4.3 MapWhenMiddleware
- 附录B 实例演示2
展开全部
出版方
电子工业出版社
电子工业出版社成立于1982年10月,是国务院独资、工信部直属的中央级科技与教育出版社,是专业的信息技术知识集成和服务提供商。经过三十多年的建设与发展,已成为一家以科技和教育出版、期刊、网络、行业支撑服务、数字出版、软件研发、软科学研究、职业培训和教育为核心业务的现代知识服务集团。出版物内容涵盖了电子信息技术的各个分支及工业技术、经济管理、科普与少儿、社科人文等领域,综合出版能力位居全国出版行业前列。