精通 ASP.NET MVC 5
二手书,此书是一本无赠品和附件,非套装,购买套装请联系客服
¥
12.75
1.3折
¥
99
八五品
仅1件
作者[美]Adam Freeman 著;张成彬、徐燕萍、李萍、林逸 译
出版社人民邮电出版社
出版时间2016-01
版次1
装帧平装
货号9787115410238
上书时间2024-09-30
商品详情
- 品相描述:八五品
图书标准信息
-
作者
[美]Adam Freeman 著;张成彬、徐燕萍、李萍、林逸 译
-
出版社
人民邮电出版社
-
出版时间
2016-01
-
版次
1
-
ISBN
9787115410238
-
定价
99.00元
-
装帧
平装
-
开本
16开
-
纸张
胶版纸
-
页数
642页
-
正文语种
简体中文
-
原版书名
Pro ASP.NET MVC 5
- 【内容简介】
-
ASP.NET MVC 5框架是微软ASP.NET Web平台的新进展。它提供了高生产率的编程模型,结合ASP.NET的全部优势,促成更整洁的代码架构、测试驱动开发和强大的可扩展性。
本书涵盖ASP.NET MVC 5的所有开发优势技术,包括用C#属性定义路由技术及重写过滤器技术等。且构建MVC应用程序的用户体验也有本质上的改进。其中书里也专一讲解了用新Visual Studio 2013创建MVC应用程序时的技术和技巧。本书包括完整的开发工具介绍以及对代码进行辅助编译和调试的技术。
本书还涉及流行的Bootstrap JavaScript库,该库现已被纳入到MVC 5之中,为开发人员提供更广泛的多平台CSS和HTML5选项,而不必像以前那样去加载大量的第三方库。
本书适合程序员、Web开发者学习,也适合作为大中专院校相关专业的师生用书和培训学校的教材。
- 【作者简介】
-
李萍,盐城工学院教师,硕士,长期从事计算机专业的教学与科研工作,是印度NIIT双语教学认证教师。主要研究领域:大型Web数据库应用与设计、计算机应用与开发。承担了本书全部译文的校对与文字修订工作。
- 【目录】
-
第1章 ASP.NET MVC背景1
1.1 理解ASP.NET历史1
1.2 当今的Web开发3
1.2.1 Web标准与REST3
1.2.2 敏捷与测试驱动开发3
1.2.3 Ruby on Rails4
1.2.4 Node.js4
1.3 ASP.NET MVC的关键优点5
1.3.1 MVC的体系结构5
1.3.2 可扩展性5
1.3.3 HTML和HTTP上的严密控制6
1.3.4 可测试性6
1.3.5 强大的路由系统7
1.3.6 建立在ASP.NET平台的精华之上7
1.3.7 现代API7
1.3.8 ASP.NET MVC是开源的8
1.4 本书的预备知识8
1.5 本书的结构8
1.5.1 第1部分:ASP.NET MVC 5导论8
1.5.2 第2部分:ASP.NET MVC细节8
1.6 本版的新特点9
1.7 获取示例代码9
1.8 本书所需的软件10
1.9 诚信10
1.10 小结10
第2章 第一个MVC应用程序11
2.1 准备Visual Studio11
2.2 创建新的ASP.NET MVC项目11
2.2.1 添加第一个控制器13
2.2.2 理解路由16
2.3 渲染Web页面16
2.3.1 创建并渲染视图16
2.3.2 添加动态输出20
2.4 创建一个简单的数据录入应用程序21
2.4.1 设置场景21
2.4.2 设计一个数据模型22
2.4.3 链接动作方法23
2.4.4 建立表单25
2.4.5 设置启动URL27
2.4.6 处理表单28
2.4.7 添加验证31
2.4.8 设置内容样式35
2.4.9 完成示例40
2.5 小结41
第3章 MVC模式42
3.1 MVC简史42
3.2 理解MVC模式42
3.2.1 理解域模型43
3.2.2 MVC的ASP.NET实现44
3.2.3 MVC与其他模式比较44
3.3 建立松耦合组件47
3.3.1 使用依赖项注入48
3.3.2 使用依赖项注入容器49
3.4 自动测试初步50
3.4.1 理解单元测试51
3.4.2 理解集成测试55
3.5 小结56
第4章 基本语言特性57
4.1 准备示例项目57
4.2 使用自动实现的属性59
4.3 使用对象与集合的初始化器62
4.4 使用扩展方法64
4.4.1 对接口运用扩展方法65
4.4.2 创建过滤扩展方法67
4.5 使用lambda表达式69
4.6 使用自动类型接口72
4.7 使用匿名类型72
4.8 执行语言集成查询(LINQ)74
4.9 使用Async方法78
4.10 小结81
第5章 使用Razor82
5.1 准备示例项目82
5.1.1 定义模型82
5.1.2 定义控制器83
5.1.3 创建视图83
5.2 使用模型对象84
5.3 使用布局86
5.3.1 创建布局86
5.3.2 运用布局88
5.3.3 使用视图起始文件88
5.3.4 演示共享布局89
5.4 使用Razor表达式92
5.4.1 插入数据值93
5.4.2 设置标签属性的值94
5.4.3 使用条件语句96
5.4.4 枚举数组和集合98
5.4.5 处理命名空间99
5.5 小结100
第6章 MVC基本工具101
6.1 准备示例项目102
6.1.1 创建模型类102
6.1.2 添加控制器103
6.1.3 添加视图104
6.2 使用Ninject104
6.2.1 理解问题105
6.2.2 将Ninject添加到Visual Studio项目106
6.2.3 Ninject初步107
6.2.4 建立MVC的依赖项注入108
6.2.5 创建依赖项链111
6.2.6 指定属性和构造器参数值112
6.2.7 使用条件绑定114
6.2.8 设置对象作用域115
6.3 Visual Studio的单元测试117
6.3.1 创建单元测试项目117
6.3.2 添加单元测试119
6.3.3 运行单元测试(并失败)122
6.3.4 实现特性123
6.3.5 测试并修正代码123
6.4 使用Moq库124
6.4.1 理解问题125
6.4.2 将Moq添加到Visual Studio项目126
6.4.3 对单元测试添加模仿对象126
6.4.4 创建更复杂的模仿对象129
6.5 小结131
第7章 SportsStore:一个真正的应用程序132
7.1 开始133
7.1.1 创建Visual Studio解决方案和项目133
7.1.2 安装工具包134
7.1.3 添加项目之间的引用135
7.1.4 设置DI容器135
7.1.5 运行应用程序136
7.2 从域模型开始137
7.2.1 创建抽象存储库137
7.2.2 创建模仿存储库138
7.3 显示产品列表139
7.3.1 添加控制器139
7.3.2 添加布局、视图起始文件及视图140
7.3.3 设置默认路由142
7.3.4 运行应用程序143
7.4 准备数据库143
7.4.1 创建数据库144
7.4.2 定义数据库方案145
7.4.3 向数据库添加数据147
7.4.4 创建Entity Framework上下文148
7.4.5 创建Product存储库149
7.5 添加分页151
7.5.1 显示页面链接152
7.5.2 改进URL160
7.6 设置内容样式161
7.6.1 安装Bootstrap包161
7.6.2 在布局中运用Bootstrap样式162
7.6.3 创建分部视图163
7.7 小结165
第8章 SportsStore:导航166
8.1 添加导航控件166
8.1.1 过滤产品列表166
8.1.2 调整URL方案170
8.1.3 建立分类导航菜单172
8.1.4 修正页面计数178
8.2 创建购物车180
8.2.1 定义购物车实体180
8.2.2 添加“加入购物车”按钮184
8.2.3 实现购物车控制器185
8.2.4 显示购物车内容186
8.3 小结188
第9章 SportsStore:完成购物车189
9.1 使用模型绑定189
9.2 完成购物车功能193
9.2.1 删除购物车物品194
9.2.2 添加购物车摘要195
9.3 递交订单197
9.3.1 扩充域模型197
9.3.2 添加结算过程198
9.3.3 实现订单处理器203
9.3.4 注册接口实现206
9.3.5 完成购物车控制器207
9.3.6 显示验证错误210
9.3.7 显示致谢页面212
9.4 小结212
第10章 SportsStore:移动版213
10.1 移动Web开发的背景213
10.2 使用响应式设计214
10.2.1 创建响应式页头215
10.2.2 创建响应式的产品列表218
10.3 创建移动专用的内容225
10.3.1 创建移动布局225
10.3.2 创建移动视图226
10.4 小结229
第11章 SportsStore:管理230
11.1 添加分类管理230
11.1.1 创建CRUD控制器230
11.1.2 创建新的布局232
11.1.3 实现List视图233
11.1.4 编辑产品236
11.1.5 创建新产品248
11.1.6 删除产品251
11.2 小结253
第12章 SportsStore:安全性与收尾工作254
12.1 实现管理控制器的安全254
12.1.1 创建基本的安全策略254
12.1.2 运用过滤器进行授权256
12.1.3 创建认证提供器257
12.1.4 创建Account控制器259
12.1.5 创建视图260
12.2 图像上传263
12.2.1 扩展数据库263
12.2.2 增强域模型263
12.2.3 创建上传用户界面的元素264
12.2.4 将图像保存到数据库266
12.2.5 实现GetImage动作方法268
12.2.6 显示产品图像270
第13章 部署272
13.1 Windows Azure的准备273
13.1.1 创建Web网站和数据库273
13.1.2 准备远程管理数据库275
13.1.3 创建数据库模式275
13.2 部署应用程序278
13.3 小结280
第14章 MVC项目综述281
14.1 使用Visual Studio的MVC项目281
14.1.1 创建项目281
14.1.2 理解MVC约定284
14.2 调试MVC应用程序286
14.2.1 准备示例项目286
14.2.2 运行Visual Studio调试器288
14.2.3 引发Visual Studio调试器中断290
14.2.4 使用编辑并继续293
14.3 使用浏览器链接296
14.4 小结297
第15章 URL路由298
15.1 创建示例项目299
15.1.1 创建示例控制器299
15.1.2 创建视图300
15.1.3 设置起始URL并测试应用程序301
15.2 URL模式301
15.3 创建并注册一条简单路由303
15.4 定义默认值308
15.5 使用静态URL片段310
15.6 定义自定义片段变量313
15.6.1 用自定义变量作为动作方法参数315
15.6.2 定义可选URL片段316
15.6.3 定义可变长路由318
15.6.4 按命名空间区分控制器优先顺序319
15.7 约束路由322
15.7.1 用正则表达式约束路由322
15.7.2 将一条路由约束到一组指定的值323
15.7.3 使用HTTP方法约束路由324
15.7.4 定义自定义约束327
15.8 使用属性路由329
15.8.1 启用和运用属性路由329
15.8.2 使用片段变量创建路由331
15.8.3 运用路由约束332
15.8.4 使用Route Prefix333
15.9 小结334
第16章 高级路由特性335
16.1 准备示例项目335
16.1.1 简化路由336
16.1.2 添加优化包336
16.1.3 更新单元测试项目336
16.2 在视图中生成输出URL337
16.2.1 用路由系统生成输出URL337
16.2.2 以其他控制器为目标339
16.2.3 传递额外的值341
16.2.4 指定HTML标签属性343
16.2.5 生成链接中的全限定URL343
16.2.6 生成URL(而不是链接)344
16.2.7 在动作方法中生成输出URL345
16.2.8 根据指定路由生成URL346
16.3 定制路由系统347
16.3.1 创建自定义的RouteBase实现347
16.3.2 创建自定义路由处理程序352
16.4 使用区域353
16.4.1 创建一个区域353
16.4.2 填充区域355
16.4.3 解析不明确的控制器问题356
16.4.4 使用属性创建区域357
16.4.5 生成对区域动作的链接358
16.5 对磁盘文件进行路由请求359
16.5.1 配置应用程序服务器360
16.5.2 为磁盘文件定义路由361
16.6 绕过路由系统362
16.7 URL方案最佳做法363
16.7.1 使URL整洁和人性化363
16.7.2 GET和POST:选用正确的一个364
16.8 小结364
第17章 控制器和动作365
17.1 准备示例项目365
17.2 控制器介绍366
17.2.1 使用IController创建控制器366
17.2.2 创建派生于Controller类的控制器368
17.3 接收请求数据370
17.3.1 通过上下文对象获取数据370
17.3.2 使用动作方法参数371
17.4 产生输出373
17.4.1 理解动作结果375
17.4.2 通过渲染视图返回HTML378
17.4.3 将数据从动作方法传递给视图381
17.4.4 执行重定向385
17.4.5 返回错误及HTTP代码389
17.5 小结391
第18章 过滤器392
18.1 准备示例项目392
18.2 使用过滤器394
18.2.1 过滤器类型介绍396
18.2.2 将过滤器运用于控制器和动作方法396
18.3 使用授权过滤器397
18.3.1 运用自定义授权过滤器399
18.3.2 使用内建的授权过滤器399
18.4 使用认证过滤器400
18.4.1 理解IAuthenticationFilter接口400
18.4.2 实现认证检查402
18.4.3 组合认证和授权过滤器404
18.4.4 处理最终有疑问的请求405
18.5 使用异常过滤器406
18.5.1 创建异常过滤器406
18.5.2 运用异常过滤器407
18.5.3 使用视图来响应异常409
18.5.4 使用内建的异常过滤器411
18.6 使用动作过滤器414
18.6.1 实现OnActionExecuting方法414
18.6.2 实现OnActionExecuted方法416
18.7 使用结果过滤器417
18.8 使用其他过滤器特性420
18.8.1 无注解属性的过滤420
18.8.2 使用全局过滤器422
18.8.3 对过滤器执行进行排序424
18.8.4 重载过滤器426
18.9 小结428
第19章 控制器可扩展性429
19.1 准备示例项目430
19.2 创建自定义控制器工厂431
19.2.1 处理备用控制器433
19.2.2 实例化控制器类434
19.2.3 实现其他接口方法434
19.2.4 注册自定义控制器工厂435
19.3 使用内建的控制器工厂435
19.3.1 命名空间优先排序436
19.3.2 定制DefaultControllerFactory的控制器实例化437
19.4 创建自定义动作调用器439
19.5 使用内建的动作调用器441
19.5.1 使用自定义动作名441
19.5.2 使用动作方法选择443
19.6 用特殊控制器改善性能447
19.6.1 使用无会话控制器448
19.6.2 使用异步控制器450
19.7 小结454
第20章 视图455
20.1 创建自定义视图引擎455
20.1.1 准备示例项目458
20.1.2 创建自定义的IView458
20.1.3 创建IViewEngine实现459
20.1.4 注册自定义视图引擎460
20.1.5 测试视图引擎461
20.2 使用Razor引擎462
20.2.1 准备示例项目462
20.2.2 理解Razor视图渲染463
20.2.3 配置视图搜索位置464
20.3 对Razor视图添加动态内容467
20.3.1 使用分段467
20.3.2 使用分部视图472
20.3.3 使用子动作474
20.4 小结476
第21章 辅助器方法477
21.1 准备示例项目477
21.1.1 设置启动URL478
21.1.2 测试示例应用程序478
21.2 创建自定义辅助器方法479
21.2.1 创建内联的辅助器方法479
21.2.2 创建外部辅助器方法481
21.2.3 管理辅助器方法中的字符串编码484
21.3 使用内建的Form辅助器方法487
21.3.1 创建Form元素487
21.3.2 指定表单使用的路由493
21.3.3 使用输入辅助器495
21.3.4 创建Select元素499
21.4 小结501
第22章 模板辅助器方法502
22.1 准备示例项目502
22.2 使用模板辅助器方法504
22.2.1 生成标签和显示元素508
22.2.2 使用整体模型模板辅助器510
22.3 使用模型元数据512
22.3.1 用元数据控制编辑及可见性512
22.3.2 使用用于标签的元数据514
22.3.3 使用用于数据值的元数据515
22.3.4 用元数据选择显示模板517
22.3.5 将元数据运用于伙伴类518
22.3.6 使用复合类型属性520
22.4 定制模板视图辅助器系统521
22.4.1 创建自定义编辑器模板521
22.4.2 创建泛型模板522
22.4.3 替换内建模板524
22.5 小结524
第23章 URL和Ajax辅助器方法525
23.1 准备示例项目525
23.1.1 定义附加的CSS样式526
23.1.2 安装NuGet包527
23.2 创建基本的链接和URL527
23.3 使用MVC的渐进式Ajax529
23.3.1 创建同步表单视图529
23.3.2 为渐进式Ajax准备项目531
23.4 创建渐进式Ajax表单532
23.4.1 准备控制器532
23.4.2 创建Ajax表单534
23.4.3 理解渐进式Ajax工作原理535
23.5 设置Ajax选项536
23.5.1 确保优雅降级536
23.5.2 在Ajax请求期间给用户提供反馈538
23.5.3 请求之前对用户进行提示539
23.6 创建Ajax链接539
23.7 使用Ajax回调541
23.8 使用JSON543
23.8.1 对控制器添加JSON支持544
23.8.2 在浏览器中处理JSON545
23.8.3 准备编码数据547
23.8.4 在动作方法中检测Ajax请求548
23.9 小结550
第24章 模型绑定551
24.1 准备示例项目551
24.2 理解模型绑定553
24.3 使用默认模型绑定器555
24.3.1 绑定简单类型556
24.3.2 绑定复杂类型558
24.3.3 绑定到数组和集合564
24.4 手工调用模型绑定569
24.5 定制模型绑定系统571
24.5.1 创建自定义值提供器571
24.5.2 创建自定义模型绑定器574
24.5.3 注册自定义模型绑定器576
24.6 小结577
第25章 模型验证578
25.1 准备示例项目578
25.1.1 创建布局579
25.1.2 创建视图580
25.2 明确地验证模型581
25.3 显示验证消息584
25.4 使用其他验证技术588
25.4.1 在模型绑定器内实施验证588
25.4.2 用元数据指定验证规则589
25.4.3 定义自验证模型595
25.5 执行客户端验证596
25.5.1 启用客户端验证597
25.5.2 使用客户端验证598
25.5.3 理解客户端验证机制599
25.6 执行远程验证600
25.7 小结603
第26章 捆绑包604
26.1 准备示例应用程序604
26.1.1 添加NuGet包604
26.1.2 创建模型和控制器604
26.1.3 创建布局和视图605
26.2 脚本及样式表加载的资料分析608
26.3 使用脚本和样式捆绑包610
26.3.1 添加NuGet包610
26.3.2 定义捆绑包610
26.3.3 运用捆绑包612
26.3.4 优化JavaScript和CSS文件614
26.4 小结615
第27章 Web API与单页应用程序616
27.1 理解单页应用程序616
27.2 准备示例项目617
27.2.1 创建模型617
27.2.2 添加NuGet包619
27.2.3 添加控制器619
27.2.4 添加布局和视图620
27.2.5 设置启动位置并测试示例应用程序622
27.3 使用Web API623
27.3.1 创建Web API控制器624
27.3.2 测试API控制器624
27.4 理解API控制器的工作机制626
27.4.1 理解API控制器的动作选择627
27.4.2 将HTTP方法映射到动作方法628
27.5 将Knockout用于单页应用程序629
27.5.1 在布局中添加JavaScript库629
27.5.2 实现Summary630
27.5.3 改善Delete特性635
27.5.4 实现Create特性636
27.6 完成应用程序639
27.6.1 简化Home控制器639
27.6.2 管理内容的可见性640
27.7 小结642
点击展开
点击收起
— 没有更多了 —
以下为对购买帮助不大的评价