深入浅出:ASP.NET Core
¥
91.1
7.1折
¥
128
全新
库存10件
作者周家安
出版社清华大学出版社
出版时间2024-04
版次1
装帧平装
货号9787302656685
上书时间2024-11-29
商品详情
- 品相描述:全新
图书标准信息
-
作者
周家安
-
出版社
清华大学出版社
-
出版时间
2024-04
-
版次
1
-
ISBN
9787302656685
-
定价
128.00元
-
装帧
平装
-
开本
16开
-
页数
552页
-
字数
798千字
- 【内容简介】
-
ap. core是微软推出的跨台、开放源代码的web开发框架。本书秉持“现学现用”的
原则,知识讲解通俗易懂,并配有示例代码。每个示例都是针对知识点而设计的,代码量适中,
功能和结构简单,便于读者参学和扩展改造。
全书共18章。章和第2章讲述了ap. core应用程序的初始化过程以及运行环境的设定;
第3章单独介绍了ap. core应用程序的设计模式—组件化,即依赖注入技术;第4章和第5
章讲述了配置应用程序的方法,包括使用配置文件和选项模式;第6章和第7章讲述了管道和
存储;第8~11章涉及web开发的重点知识:razor页面、mvc框架、模型绑定及web api;
2章和3章讲述mvc框架的应用扩展,包括过滤器和标记帮助器的使用,以适应实际开发需
求;4章介绍了静态文件服务,服务器可向客户端提供目录/文件的访问入;5章讲述路由
约束;6章和7章讲述了ap. core独有的客户端技术—ignair和blazor;8章主要
涉及基本的安全功能,即验证与授权。
本书适合作为广大高校、培训机构.课程相关的教材或.爱好者的参书。对于想通过
自学步入编程大门的读者,也阅读本书。
- 【作者简介】
-
:
周家安,微软最有价值专家(MVP),擅长,NET及其相关开发技术,专注于探索简单实用的编程学习方法。长期在博客园等技术社区撰写Windows相关技术文章,并出版有《深入浅出:Windows 8.1应用开发》《精通C#5.0》《Windows 10应用开发实战》等原创技术图书。
- 【目录】
-
章 初始化asp. core应用程序 1
1.1 应用程序的启动过程 1
1.2 webapplicationbuilder类 2
1.3 启动应用程序 3
1.4 使用host初始化应用程序 4
1.4.1 通用主机 5
1.4.2 示例:简单的通用主机 5
1.4.3 web主机 7
1.5 设置应用程序的url 9
1.5.1 调用useurls()方法 9
1.5.2 使用webapplication类的urls属 10
1.5.3 调用run()方法时传递url 10
1.5.4 通过serveraddressesfeature对象设置url 11
1.5.5 使用命令行参数 12
1.5.6 使用配置文件 13
1.5.7 使用环境变量 13
1.5.8 使用launchsettings.json文件 14
1.5.9 kestrel服务器的侦听地址 14
1.5.10 通过.sys配置url 15
1.5.11 preferhostingurls()方法的作用 15
1.6 应用程序生命周期事件 16
第2章 运行环境 18
2.1 定义运行环境 18
2.2 is{environmentname}扩展方法 19
2.3 多运行环境下的配置文件 21
2.4 用于环境筛选的razor标记 23
2.5 运行环境与依赖注入 25
第3章 依赖注入 28
3.1 依赖注入与服务容器 28
3.1.1 servicecollection类 31
3.1.2 serviceprovider类 32
3.2 .项目中的依赖注入 32
3.3 asp. core项目中的依赖注入 33
3.4 构建存在依赖关系的服务 35
3.5 服务的生存期 38
3.6 getservice()方法与getrequiredservice()方法的区别 41
3.7 注入多个服务实例 42
3.8 容易被忽略的问题 46
第4章 配置应用程序 48
4.1 配置的基本结构 48
4.2 在.应用程序中使用配置 49
4.3 在asp. core应用程序中使用配置 51
4.3.1 配置的数据来源 51
4.3.2 查看所有配置信息 51
4.4 iconfigurationbuilder接 52
4.5 configurationmanager类 53
4.6 iconfigurationsource接与iconfigurationprovider接 54
4.6.1 自定义扩展点 55
4.6.2 示例:来自csv文件的配置 56
4.7 json配置 59
4.7.1 示例:访问json数组对象 62
4.7.2 示例:自动重新加载配置 63
4.8 xml配置 64
4.9 环境变量 67
4.9.1 设置环境变量前缀 68
4.9.2 替换默认的aspcore_前缀 70
4.9.3 示例:替换环境变量前缀 70
4.9.4 分层配置结构 71
4.10 命令行参数 72
4.11 ini配置 75
4.12 配置与依赖注入 78
4.12.1 示例:将iconfiguration注入mvc控制器 78
4.12.2 示例:通过配置选择哈希算法 79
4.13 多棵配置树 82
第5章 选项模式 85
5.1 选项模式概述 85
5.2 服务容器的扩展方法 87
5.3 各接之间的关系 87
5.3.1 iconfigureoptions接与iconfigurenamedoptions接 87
5.3.2 itconfigureoptions接 88
5.3.3 ivalidateoptions接 88
5.3.4 ioptionsfactory接 89
5.3.5 完整的流程图 90
5.4 选项类的封装接 91
5.4.1 示例:在mvc控制器中访问选项类 92
5.4.2 示例:自动更新选项类 93
5.5 带名称的选项组 95
5.6 后期配置 98
5.7 选项类的验证 99
5.7.1 内置的验证方式 100
5.7.2 使用数据批注 102
5.8 处理带参数的构造函数 105
5.9 直接实现ioptions接 108
第6章 管道 110
6.1 管道与中间件 110
6.2 中间件的实现方法 110
6.3 通过委托实现中间件 111
6.3.1 示例:use()方法的简单用法 114
6.3.2 管道的“短路” 115
6.3.3 run()方法 116
6.4 通过类实现中间件 117
6.4.1 带参数的中间件 118
6.4.2 中间件类与依赖注入 119
6.5 通过imiddleware接实现中间件 120
6.6 终结点 121
6.6.1 示例:常见的请求方式 123
6.6.2 示例:同时使用razor pages和mvc 125
6.6.3 为终结点分配名称 127
6.6.4 元数据 129
6.7 有条件地执行中间件 130
6.7.1 示例:调用包含user_id字段的中间件 131
6.7.2 示例:只允许以t方式调用web api 132
第7章 存储 135
7.1 上下文 135
7.1.1 示例:在中间件中设置响应标头 136
7.1.2 示例:在map*()方法中访问上下文 137
7.1.3 示例:使用razor标记呈现请求标头 138
7.1.4 示例:在mvc中访问上下文 140
7.2 消息头 141
7.2.1 headernames类 143
7.2.2 消息头的分类 144
7.2.3 分析复杂消息头 145
7.3 查询字符串 148
7.3.1 读取查询参数 149
7.3.2 多值参数 150
7.4 表单数据 151
7.4.1 读取简单的表单数据 151
7.4.2 文件上传 153
7.5 cookie 157
7.6 context类的items属 159
7.7 会话 160
7.7.1 isession接 161
7.7.2 设置会话cookie的名称 164
7.7.3 示例:将会话数据存储到json文件中 164
第8章 razor页面 172
8.1 razor页面的特点 172
8.2 razor语法 173
8.2.1 两种表达式 173
8.2.2 代码块 174
8.2.3 注释 175
8.2.4 流程控制 176
8.3 开启razor页面功能 177
8.4 razor页面文件 178
8.5 页面文件的搜索路径 179
8.5.1 配置razorpagesoptions选项类 180
8.5.2 便捷的扩展方法 180
8.6 页面路由 181
8.6.1 通过@page指令设置路由规则 181
8.6.2 通过约定模型定义路由规则 182
8.7 页面模型类 184
8.7.1 页面自身作为模型类 185
8.7.2 从pagemodel派生类 185
8.7.3 通过特类实现页面模型类 186
8.8 页面处理程序 187
8.8.1 通用的处理程序 188
8.8.2 解决t请求时出现的错误 189
8.8.3 使用多个处理程序 190
8.8.4 通过路由参数选择处理程序 192
8.8.5 自定义的处理程序模型 193
第9章 mvc框架 199
9.1 mvc基本概念 199
9.2 启用mvc功能 199
9.3 控制器 200
9.3.1 示例:从controllerbase类派生 203
9.3.2 示例:从controller类派生 205
9.3.3 示例:使用controllerattribute 205
9.3.4 示例:使用controller后缀 206
9.3.5 自定义控制器的名称 207
9.3.6 示例:controllernameattribute类 207
9.3.7 自定义作方法的名称 208
9.3.8 示例:custactionnameattribute类 208
9.3.9 示例:actionnameattribute类 209
9.4 mvc路由规则 210
9.4.1 全局路由规则 211
9.4.2 示例:注册两条全局路由规则 211
9.4.3 局部路由规则 212
9.4.4 iroutetemteprovider接 213
9.4.5 通过实现约定接定义路由规则 214
9.4.6 示例:custprefixrouteconvention类 215
9.5 作方法所支持的请求 217
9.5.1 示例:只支持-put请求的作方法 217
9.5.2 内置特类 218
9.6 区域 220
9.7 视图 221
9.7.1 视图文件的默认存放路径 221
9.7.2 自定义视图的路径格式 222
9.7.3 布局视图 225
9.7.4 示例:布局视图的查找顺序 226
9.7.5 示例:配置razor pages布局视图的查找路径 229
9.7.6 _viewimports与_viewstart文件 231
9.7.7 示例:_viewstart文件的替换行为 232
9.8 iviewlocationexpander接 233
9.8.1 示例:多版本视图 234
9.8.2 示例:根据url查询参数扩展视图路径 237
9.8.3 languageviewlocationexpander类 240
9.9 局部视图 242
9.9.1 示例:单 243
9.9.2 示例:导航栏 246
9.10 视图组件 248
9.10.1 示例:一个简单的视图组件 249
9.10.2 视图文件的查找路径 250
9.10.3 示例:带参数的视图组件 251
9.10.4 通过标记帮助器调用视图组件 253
9.10.5 示例:greeting视图组件 254
9.10.6 示例:在mvc控制器中调用视图组件 255
9.10.7 两个特类 255
9.11 识别其他程序集中的控制器 256
9.11.1 示例:使用applicationpartattribute类 256
9.11.2 示例:使用addapplicationpart()扩展方法 257
9.11.3 示例:使用applicationpartmanager类 259
0章 模型绑定 261
10.1 概述 261
10.2 自动绑定 262
10.2.1 示例:计算器 263
10.2.2 示例:绑定数组类型的数据 264
10.2.3 示例:绑定复杂类 266
10.2.4 多个参数的模型绑定 268
10.2.5 示例:绑定3个参数 268
10.2.6 字典类型的模型绑定 270
10.2.7 示例:绑定字典数据 270
10.2.8 示例:绑定iformcollection类型 272
10.2.9 示例:md5计算器 273
10.2.10 绑定iformfile和iformfilecollection类型 274
10.2.11 示例:上传一个文本文件 275
10.2.12 示例:上传多个文件 276
10.3 设置模型绑定的来源 278
10.3.1 示例:绑定消息头 278
10.3.2 示例:从消息正文提取数据 279
10.3.3 示例:与路由参数绑定 280
10.3.4 示例:fromservices特的使用 280
10.3.5 示例:混合使用from*特类 282
10.3.6 示例:将from*特类应用于属成员 283
10.4 自定义ivalueprovider接 284
10.4.1 示例:由自定义字符串提供的值 285
10.4.2 示例:cookievalueprovider 288
10.5 imodelbinder接 292
10.5.1 内置绑定器 293
10.5.2 示例:addressinfomodelbinder类 294
10.6 bindrequiredattribute类与bindneverattribute类 296
10.7 绑定到属成员 299
10.7.1 示例:控制器的属绑定 299
10.7.2 示例:pagemodel中的属绑定 300
10.7.3 示例:cancellationtoken类型的属绑定 302
1章 web api 305
11.1 web api基础 305
11.1.1 controllerbase类与controller类 305
11.1.2 apicontroller特 306
11.1.3 示例:一个简单的web api 306
11.1.4 示例:以t方式提交数据 308
11.2 xml格式 310
11.2.1 示例:常规的xml序列化方案 311
11.2.2 示例:使用xmldatacontractserializer方案 314
11.3 选择响应格式 316
11.3.1 示例:通过accept消息头选择响应格式 316
11.3.2 示例:使用格式过滤器 317
11.4 自定义格式 319
11.4.1 示例:custdatainputformatter类 319
11.4.2 示例:bytestohexoutputformatter类 323
11.5 极小api 325
11.5.1 示例:一些简单的极小api例子 325
11.5.2 示例:在极小api上使用数据源特 327
11.5.3 上传文件 328
11.5.4 示例:直接读取文件流 328
11.5.5 示例:上传多个文件 330
11.5.6 iresult接 332
11.5.7 示例:results类的使用 333
11.6 api浏览功能 333
11.6.1 iapidescriptiongroupcollectionprovider接 334
11.6.2 示例:列出已定义的web api 334
11.6.3 api约定 337
11.6.4 swagger框架 339
11.6.5 示例:使用swagger生成api文档 340
点击展开
点击收起
— 没有更多了 —
以下为对购买帮助不大的评价