图书介绍
ASP.NET MVC 1.0高级编程PDF|Epub|txt|kindle电子书版本网盘下载
![ASP.NET MVC 1.0高级编程](https://www.shukui.net/cover/3/30216541.jpg)
- (美)康纳利著 著
- 出版社: 北京:清华大学出版社
- ISBN:9787302222439
- 出版时间:2010
- 标注页数:422页
- 文件大小:95MB
- 文件页数:436页
- 主题词:主页制作-程序设计
PDF下载
下载说明
ASP.NET MVC 1.0高级编程PDF格式电子书版下载
下载的文件为RAR压缩包。需要使用解压软件进行解压得到PDF格式图书。建议使用BT下载工具Free Download Manager进行下载,简称FDM(免费,没有广告,支持多平台)。本站资源全部打包为BT种子。所以需要使用专业的BT下载软件进行下载。如BitComet qBittorrent uTorrent等BT下载工具。迅雷目前由于本站不是热门资源。不推荐使用!后期资源热门了。安装了迅雷也可以迅雷进行下载!
(文件页数 要大于 标注页数,上中下等多册电子书除外)
注意:本站所有压缩包均有解压码: 点击下载压缩包解压工具
图书目录
第1章 NerdDinner1
1.1 File|New Project5
1.1.1 查看NerdDinner目录的结构6
1.1.2 运行NerdDinner应用程序9
1.1.3 测试NerdDinner应用程序11
1.2 创建数据库12
1.2.1 创建新的SQL Server Express数据库12
1.2.2 在数据库中创建表13
1.2.3 建立两个表之间的外键关系16
1.2.4 向表中添加数据18
1.3 构建模型19
1.3.1 LINQ to SQL19
1.3.2 向项目中添加LINQ to SQL类19
1.3.3 通过LINQ to SQL创建数据模型类21
1.3.4 NerdDinnerDataContext类23
1.3.5 创建DinnerRepository类24
1.3.6 使用DinnerRepository类进行检索、更新、插入和删除26
1.3.7 使用Model类集成验证和业务规则逻辑29
1.4 控制器和视图33
1.4.1 添加DinnersController控制器34
1.4.2 将索引和细节动作的方法添加到DinnersController类中35
1.4.3 理解ASP.NET MVC的路由36
1.4.4 使用来自DinnersController的DinnerRepository38
1.4.5 通过控制器使用视图38
1.4.6 实现NotFound视图模板40
1.4.7 实现Details视图模板42
1.4.8 实现Index视图模板47
1.4.9 基于约定的命名和\Views目录结构52
1.5 表单场景的创建、更新、删除54
1.5.1 通过DinnersController处理URL54
1.5.2 实现HTTP-GET编辑动作方法55
1.5.3 Html.BeginForm和Html.TextBox的Html辅助方法59
1.5.4 实现HTTP-POST编辑动作方法60
1.5.5 处理编辑错误64
1.5.6 理解ModelState和验证的HTML辅助方法65
1.5.7 使用AddRuleViolations辅助方法68
1.5.8 Edit动作方法的完整实现68
1.5.9 实现HTTP-GET创建动作方法69
1.5.10 实现HTTP-POST创建动作方法72
1.5.11 实现HTTP-GET删除动作方法75
1.5.12 实现HTTP-POST删除动作方法78
1.5.13 模型绑定安全性79
1.5.14 CRUD小结81
1.6 ViewData和ViewModel84
1.6.1 将数据从控制器传到视图模板中84
1.6.2 使用ViewData字典84
1.6.3 使用ViewModel模式86
1.6.4 自定义的ViewModel类89
1.7 Partials页面和Master页面90
1.7.1 回顾Edit和Create视图模板90
1.7.2 使用Partial视图模板91
1.7.3 使用局部视图模板理清代码95
1.7.4 Master页面95
1.8 分页支持99
1.8.1 Index()动作方法99
1.8.2 理解IQueryable〈T〉100
1.8.3 在URL中添加page值101
1.8.4 添加页面导航用户界面104
1.9 身份验证和授权107
1.9.1 理解身份验证和授权107
1.9.2 表单身份验证和AccountController108
1.9.3 使用[Authorize]过滤器对/Dinners/Create的URL地址进行授权111
1.9.4 创建Dinners时使用User.Identity.Name属性112
1.9.5 在编辑宴会记录时使用User.Identity.Name属性113
1.9.6 显示/隐藏编辑和删除链接115
1.10 通过AJAX实现RSVP支持116
1.10.1 指明用户是否已经回复116
1.10.2 实现Register动作方法119
1.10.3 使用AJAX调用Register动作方法119
1.10.4 添加jQuery动画122
1.10.5 简化-重构RSVP局部视图123
1.11 集成AJAX地图124
1.11.1 创建Map局部视图124
1.11.2 创建Map.js实用程序库125
1.11.3 将地图与创建和编辑表单集成127
1.11.4 将地图与Details视图集成131
1.11.5 在数据库和仓库中实现位置搜索133
1.11.6 实现基于JSON的AJAX搜索动作方法136
1.11.7 使用jQuery调用基于JSON的AJAX方法137
1.12 单元测试141
1.12.1 进行单元测试的原因142
1.12.2 NerdDinner.Tests项目142
1.12.3 为Dinner模型类创建单元测试143
1.12.4 运行测试146
1.12.5 创建DinnersController单元测试147
1.12.6 依赖注入148
1.12.7 提取IDinnerRepository接口149
1.12.8 更新DinnersController以支持构造函数注入150
1.12.9 创建FakeDinnerRepository类151
1.12.10 在单元测试中使用FakeDinnerRepository153
1.12.11 创建Edit动作的单元测试155
1.12.12 模仿User.Identity.Name属性156
1.12.13 测试UpdateModel()方法158
1.12.14 测试小结160
1.13 NerdDinner应用程序小结160
第2章 MVC与ASP.NET163
2.1 什么是模型-视图-控制器163
2.2 当今Web上的MVC165
2.2.1 Ruby on Rails166
2.2.2 Django和Python166
2.2.3 Spring、Struts和Java167
2.2.4 Zend架构和PHP167
2.2.5 MonoRail168
2.3 新宠ASP.NET MVC168
2.3.1 为方法服务而不是文件169
2.3.2 ASP.NET MVC是Web Forms 4.0吗169
2.3.3 为什么不是Web Forms170
2.3.4 Web Forms的成本/收益171
2.3.5 对ASP.NET MVC惧怕吗171
2.4 小结172
第3章 ASP.NET>ASP.NET MVC175
3.1 抽象:Web Forms擅长的领域175
3.1.1 基本的Web Forms应用程序176
3.1.2 事件的重要性179
3.2 遗漏:Web Forms不十分适合之处181
3.2.1 ViewState182
3.2.2 控制尖括号的使用182
3.2.3 客户的ID183
3.2.4 测试183
3.3 ASP.NET MVC的基础183
3.3.1 管弦乐编曲与作曲184
3.3.2 关注点分离的含义184
3.3.3 实现可维护性的方法185
3.4 可测试性185
3.5 对ASP.NET MVC的通常反应187
3.5.1 它看起来有点像1999年的经典ASP187
3.5.2 谁移动了〈asp:Cheese runat=“server”}〉187
3.5.3 另一种Web架构188
3.6 为什么“(ASP.NET>ASP.NET MVC)==True”188
3.6.1 约定胜于配置190
3.6.2 第一、二、三个请求193
3.6.3 请求的生命周期196
3.7 小结196
第4章 路由和URL197
4.1 路由选择概述198
4.1.1 与URL重写的比较198
4.1.2 路由的定义199
4.1.3 命名路由205
4.1.4 Catch-All参数206
4.1.5 StopRoutingHandler207
4.1.6 深入分析:路由如何生成URL208
4.2 深入分析:路由如何将URL与动作联系起来215
4.2.1 高层次请求的路由选择管道215
4.2.2 路由匹配216
4.3 具有自定义约束的高级路由选择216
4.4 路由的可扩充性217
4.5 通过Web表单使用路由选择221
4.6 小结223
第5章 控制器225
5.1 控制器的发展史225
5.2 控制器的定义:IController接口227
5.3 ControllerBase抽象基类229
5.4 控制器类和动作229
5.5 ActionResult233
5.5.1 动作结果的类型234
5.5.2 动作结果的辅助方法238
5.5.3 隐式的动作结果238
5.6 动作调用者240
5.6.1 动作如何映射到方法中240
5.6.2 映射参数243
5.6.3 调用动作243
5.6.4 将数据传递给动作:模型绑定器243
5.6.5 用户输入的简单说明247
5.7 小结249
第6章 视图251
6.1 视图的职责251
6.2 视图不应该做的事情253
6.3 指定一个视图253
6.4 强类型视图255
6.5 HTML辅助方法256
6.5.1 HtmlHelper类和扩展方法257
6.5.2 使用HTML辅助方法257
6.6 视图引擎266
6.6.1 配置视图引擎267
6.6.2 选择视图引擎267
6.6.3 寻找视图268
6.6.4 视图本身268
6.6.5 可替换的视图引擎269
6.7 新的视图引擎还是新的ActionResult275
6.8 小结276
第7章 AJAX277
7.1 AJAX在什么情况下显得很酷278
7.2 AJAX不适用的情形278
7.3 AJAX示例280
7.3.1 处理禁用的脚本280
7.3.2 将Partial用于呈现285
7.3.3 关于Microsoft ASP.NET AJAX的其他一些问题288
7.3.4 在提交表单时更新HTML元素290
7.3.5 自动完成文本框292
7.3.6 通过Microsoft ASP.NET AJAX实现自动完成292
7.3.7 使用Selectbox过滤数据295
7.3.8 用jQuery实现模态弹出窗口297
7.3.9 模态弹出的代码298
7.3.10 Rating控件299
7.4 小结303
第8章 过滤器305
8.1 包含在ASP.NET MVC中的过滤器305
8.1.1 Authorize305
8.1.2 OutputCache308
8.1.3 异常过滤器310
8.1.4 自定义的过滤器311
8.2 编写自定义的动作过滤器315
8.3 编写自定义的授权过滤器317
8.4 编写自定义的异常过滤器319
8.5 过滤器的排序320
8.6 过滤器的命名321
8.7 小结323
第9章 保护应用程序的安全325
9.1 这是一场战争326
9.2 武器331
9.2.1 垃圾邮件331
9.2.2 案例研究:通过Srizbi和Storm僵尸网络从罪恶中谋取利益332
9.2.3 Digital Stealth Ninja网络333
9.3 威胁:跨站点脚本(XSS)334
9.3.1 被动注入334
9.3.2 主动注入336
9.3.3 阻止XSS338
9.3.4 Html.AttributeEncode和Url.Encode338
9.4 威胁:跨站点请求伪造339
9.5 威胁:cookie盗窃343
9.6 通过HttpOnly防止cookie偷窃344
9.7 适当的错误报告和堆栈跟踪345
9.8 保护控制器,而不是路由345
9.9 使用[NonAction]保护公有方法347
9.10 白单表单的绑定347
9.11 小结:一切取决于自己348
第10章 使用ASP.NET MVC进行测试驱动开发349
10.1 TDD简介350
10.1.1 TDD的含义350
10.1.2 编写好的单元测试353
10.1.3 编写测试的好处357
10.1.4 如何入手357
10.2 将TDD运用到ASP.NET MVC由357
10.2.1 测试路由358
10.2.2 测试控制器360
10.2.3 重定向到另一个动作360
10.2.4 测试视图辅助方法361
10.2.5 测试视图364
10.3 小结365
第11章 可测试的设计模式367
11.1 关注可测试性的原因367
11.1.1 预先大量设计368
11.1.2 敏捷软件开发369
11.2 希望编写可测试的代码370
11.3 使用测试证明所做的工作371
11.4 为可测试性设计应用程序371
11.4.1 用接口保证应用程序的未来371
11.4.2 单一职责原则373
11.4.3 避免使用单态和静态方法373
11.5 可测试的数据访问376
11.5.1 创建模型377
11.5.2 仓库模式的详细介绍379
11.6 通过服务层实现业务逻辑383
11.6.1 服务变得混乱385
11.6.2 局部解决方案:手动设置控制器的依赖386
11.7 小结392
第12章 将Web Forms和MVC相结合395
12.1 如何变得可行395
12.2 将MVC包含到已有的Web Forms应用程序中396
12.2.1 第1步:引用必要的库396
12.2.2 第2步:创建必要的目录397
12.2.3 第3步:更新Web.config398
12.3 向已有的ASP.NET MVC应用程序中添加Web Forms400
12.3.1 最简单的部分:什么都不做401
12.3.2 如果不采用默认路由403
12.3.3 使用System.Web.Routing路由到Web Forms403
12.4 在Web Forms和MVC之间共享数据404
12.4.1 使用HTTP POST404
12.4.2 使用ASP.NET会话405
12.4.3 使用跨页面提交406
12.4.4 使用TempData408
12.5 从Web Forms迁移到MVC409
12.5.1 第1步:创建带有测试项目的空的ASP.NET MVC项目409
12.5.2 第2步:实现结构410
12.5.3 第3步:添加图像和式样413
12.5.4 第4步:建立路由选择和控制器414
12.5.5 第5步:替换复杂的服务器控件418
12.5.6 第6步:上传文件并使用图像420
12.6 小结422