《ASP.NET 4.5高级编程 8版》PDF下载

  • 购买积分:30 如何计算积分?
  • 作  者:(美)盖洛德,(美)温兹,(美)拉丝托格著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2014
  • ISBN:9787302353232
  • 页数:1221 页
图书介绍:本书由众多优秀作者合力撰写,能带领读者全面掌握ASP.NET的丰富功能,了解ASP.NET 4.5中令人激动的新特性。全书分为9大部分,循序渐进地介绍了ASP.NET页面的基础知识、各种控件的用法、数据访问技术、数据提供程序、应用程序的状态管理、客户端开发、应用程序的配置和部署以及其他高级ASP.NET开发技术,全书体现了ASP.NET 4.5中的全新特性,包括Web API、HTML5和CSS3、Websocket等。

第Ⅰ部分 ASP.NET基础 3

第1章 One ASP.NET 3

1.1 One ASP.NET简介 3

1.1.1 ASP.NET的演变史 4

1.1.2 Web的演化史 5

1.2 简化复杂的生态系统 6

1.2.1 Web生态系统 7

1.2.2 起步是很简单的 8

1.2.3 整合生态系统是很简单的 8

1.2.4 真实示例 10

1.3 如何从One ASP.NET中获益 13

1.3.1 ASP.NET使起步很简单 13

1.3.2 ASP.NET支持Web生态系统 13

1.3.3 ASP.NET更容易查找、添加、更新站点的各个模块 14

1.3.4 ASP.NET帮助把一个框架的概念应用于另一个框架 14

1.3.5 ASP.NET与Web的发展一样快 14

1.4 本章小结 15

第2章 使用ASP.NET进行HTML5和CSS3设计 17

2.1 警告 18

2.2 HTML5概述 18

2.2.1 HTML5中的新元素、特性和值 19

2.2.2 使用新的HTML5标记 21

2.2.3 HTML5中新的API 23

2.3 CSS3概述 24

2.3.1 创建样式表 24

2.3.2 CSS规则 27

2.3.3 CSS继承 36

2.3.4 元素的布局和定位 37

2.3.5 CSS3中的新功能 43

2.3.6 HTML和CSS的兼容 47

2.4 在Visual Studio中使用HTML和CSS 48

2.4.1 在Visual Studio中使用CSS 48

2.4.2 指定ASP.NET控件的样式 51

2.4.3 VS 2012中对HTML和CSS的改进 53

2.4.4 Page Inspector 54

2.5 本章小结 55

第3章 ASP.NET Web窗体的结构 57

3.1 应用程序的位置选项 57

3.1.1 使用文件系统(IIS Express) 58

3.1.2 使用IIS 59

3.1.3 使用FTP 60

3.2 ASP.NET页面的结构选项 61

3.2.1 内联编码 61

3.2.2 隐藏代码模型 63

3.3 ASP.NET 4.5的Page指令 65

3.3.1 Page指令 66

3.3.2 Master指令 68

3.3.3 Control指令 69

3.3.4 Import指令 69

3.3.5 Implements指令 72

3.3.6 Register指令 72

3.3.7 Assembly指令 73

3.3.8 PreviousPageType指令 73

3.3.9 MasterType指令 74

3.3.10 OutputCache指令 74

3.3.11 Reference指令 75

3.4 ASP.NET的页面事件 75

3.5 处理回送 76

3.6 跨页面传送 77

3.7 ASP.NET应用程序文件夹 80

3.7.1 App_Code文件夹 80

3.7.2 App_Data文件夹 84

3.7.3 App_GlobalResources文件夹 84

3.7.4 App_LocalResources文件夹 84

3.7.5 App_WebReferences文件夹 84

3.7.6 App_Browsers文件夹 85

3.8 编译 85

3.9 Build Provider 88

3.9.1 使用内置的Build Provider 90

3.9.2 使用自己的Build Provider 90

3.10 Global.asax 94

3.11 通过Visual Studio 2012使用类 96

3.12 本章小结 99

第Ⅱ部分 控 件 103

第4章 ASP.NET服务器控件和客户端脚本 103

4.1 ASP.NET服务器控件 103

4.1.1 服务器控件的类型 104

4.1.2 使用服务器控件构建页面 105

4.1.3 处理服务器控件的事件 106

4.2 给服务器控件应用样式 107

4.3 CSS在ASP.NET 4.5中的改变 109

4.4 HTML服务器控件 109

4.4.1 HtmlControl基类 110

4.4.2 HtmlContainerControl类 111

4.4.3 所有的HTML类 111

4.4.4 使用HtmlGenericControl类 113

4.5 识别ASP.NET服务器控件 114

4.6 通过JavaScript处理页面和服务器控件 116

4.6.1 使用Page.ClientScript.RegisterClientScriptBlock 117

4.6.2 使用Page.ClientScript.RegisterStartupScript 118

4.6.3 使用Page.ClientScript.RegisterClientScriptInclude 120

4.7 本章小结 120

第5章 ASP.NET Web服务器控件 121

5.1 Web服务器控件概述 121

5.2 Label服务器控件 122

5.3 Literal服务器控件 124

5.4 TextBox服务器控件 125

5.4.1 使用Focus()方法 125

5.4.2 使用AutoPostBack 126

5.4.3 使用AutoCompleteType 127

5.5 Button服务器控件 127

5.5.1 CausesValidation属性 128

5.5.2 CommandName属性 128

5.5.3 使用客户端JavaScript的按钮 129

5.6 LinkButton服务器控件 130

5.7 ImageButton服务器控件 131

5.8 HyperLink服务器控件 131

5.9 DropDownList服务器控件 132

5.10 从集合中可视化地删除数据项 134

5.11 ListBox服务器控件 135

5.11.1 允许用户选择多项 136

5.11.2 使用ListBox控件的例子 136

5.11.3 给集合添加项 137

5.12 CheckBox服务器控件 138

5.12.1 如何确定复选框是否被选中 139

5.12.2 给复选框赋值 139

5.12.3 排列复选框中的文本 140

5.13 CheckBoxList服务器控件 140

5.14 RadioButton服务器控件 142

5.15 RadioButtonList服务器控件 144

5.16 Image服务器控件 145

5.17 Table服务器控件 146

5.18 Calendar服务器控件 148

5.18.1 从Calendar控件中选择日期 149

5.18.2 从Calendar控件中选择要输出的日期格式 150

5.18.3 选择日期、星期或月份 150

5.18.4 使用日期范围 151

5.18.5 修改日历的样式和操作方式 152

5.19 AdRotator服务器控件 155

5.20 Xml服务器控件 157

5.21 Panel服务器控件 157

5.22 PlaceHolder服务器控件 159

5.23 BulletedList服务器控件 160

5.24 HiddenField服务器控件 165

5.25 FileUpload服务器控件 166

5.25.1 使用FileUpload控件上传文件 166

5.25.2 给上传文件指定正确的ASP.NET权限 168

5.25.3 理解文件的大小限制 169

5.25.4 从同一个页面上传多个文件 171

5.25.5 把上传的文件放在Stream对象中 173

5.25.6 把文件内容从Stream对象移到Byte数组中 173

5.26 MultiView和View服务器控件 174

5.27 Wizard服务器控件 177

5.27.1 定制边栏导航 178

5.27.2 AllowReturn属性 179

5.27.3 使用StepType属性 179

5.27.4 给Wizard控件添加标题 180

5.27.5 使用向导的导航系统 181

5.27.6 使用Wizard控件的事件 181

5.27.7 使用Wizard控件显示窗体元素 183

5.28 ImageMap服务器控件 186

5.29 本章小结 188

第6章 验证服务器控件 189

6.1 有效性验证 189

6.2 客户端和服务器端的验证 190

6.3 ASP.NET验证服务器控件 191

6.3.1 验证原因 192

6.3.2 ASP.NET 4.5中的隐含验证 192

6.3.3 RequiredFieldValidator服务器控件 195

6.3.4 CompareValidator服务器控件 199

6.3.5 RangeValidator服务器控件 202

6.3.6 RegularExpressionValidator服务器控件 205

6.3.7 CustomValidator服务器控件 206

6.3.8 ValidationSummary服务器控件 210

6.4 关闭客户端验证功能 213

6.5 为错误通知使用图像和声音 214

6.6 使用验证组 215

6.7 本章小结 218

第7章 用户控件和服务器控件 219

7.1 用户控件 219

7.1.1 创建用户控件 220

7.1.2 与用户控件交互 222

7.1.3 动态加载用户控件 222

7.2 服务器控件 226

7.2.1 Server Control项目 226

7.2.2 控件的特性 230

7.2.3 控件的显示 231

7.2.4 添加标记特性 234

7.2.5 关于控件ID 235

7.2.6 给HTML设置样式 236

7.2.7 添加客户端功能 238

7.2.8 浏览器功能 244

7.2.9 使用ViewState 246

7.2.10 引发回送事件 249

7.2.11 处理回送数据 251

7.2.12 复合控件 253

7.2.13 模板化控件 254

7.2.14 在设计期间创建控件 257

7.3 本章小结 268

第Ⅲ部分 数据访问 271

第8章 数据绑定 271

8.1 数据源控件 271

8.1.1 SqlDataSource控件 273

8.1.2 AccessDataSource控件 278

8.1.3 LinqDataSource控件 278

8.1.4 EntitYDataSource控件 278

8.1.5 给复杂的过滤使用QueryExtender 280

8.1.6 XmlDataSource控件 281

8.1.7 ObjectDataSource控件 282

8.1.8 SiteMapDataSource控件 283

8.2 数据源控件的高速缓存 284

8.3 数据绑定控件 284

8.3.1 GridView控件 284

8.3.2 编辑GridView中的数据行 293

8.3.3 删除GridView数据 298

8.3.4 DetailsView控件 300

8.3.5 使用DetailsView插入、更新和删除数据 302

8.3.6 ListView控件 303

8.3.7 FormView控件 309

8.4 其他数据绑定控件 312

8.4.1 TreeView控件 312

8.4.2 Menu控件 313

8.4.3 Chart控件 313

8.5 内联数据绑定语法 316

8.5.1 数据绑定语法 317

8.5.2 XML数据绑定 318

8.6 表达式和表达式生成器 318

8.7 本章小结 321

第9章 模型绑定 323

9.1 模型绑定 323

9.1.1 选择数据 324

9.1.2 分页 324

9.1.3 过滤 325

9.1.4 使用值提供程序 325

9.1.5 插入数据 326

9.1.6 更新数据 327

9.2 使用强类型化的控件 329

9.3 扩展模型绑定 330

9.3.1 定制的值提供程序 330

9.3.2 定制的模型绑定器 331

9.3.3 定制的ModelDataSource 332

9.4 本章小结 334

第10章 使用LINQ查询 335

10.1 LINQ to Objects 336

10.1.1 传统的查询方法 336

10.1.2 使用LINQ替代传统的查询 338

10.1.3 使用LINQ分组数据 345

10.1.4 使用其他LINQ运算符 345

10.1.5 建立LINQ连接 346

10.1.6 使用LINQ分页数据 347

10.2 LINQ to XML 347

10.2.1 一个简单的LINQ to XML示例 348

10.2.2 连接XML数据 350

10.3 LINQ to SQL 351

10.3.1 使用O/R映射器 351

10.3.2 访问和查询数据 353

10.3.3 使用其他SQL查询方法 356

10.3.4 通过LINQ插入、更新和删除查询 358

10.4 LINQ to Entities 361

10.4.1 创建Entity Framework数据模型 362

10.4.2 访问数据 363

10.4.3 编写LINQ查询 363

10.5 本章小结 365

第11章 Entity Framework 367

11.1 能否使用同一种语言 368

11.1.1 开发工作流选项 369

11.1.2 实体数据模型 369

11.2 创建第一个实体数据模型 370

11.2.1 使用EDM向导 371

11.2.2 使用Entity Framework设计器 373

11.2.3 使用EDM建立ASP.NET Web页面 374

11.3 理解关系 376

11.3.1 一对一和一对多关系 376

11.3.2 多对一和多对多关系 379

11.4 在EDM中使用继承功能 381

11.5 使用EntityDataSource控件 384

11.5.1 创建基本页面 384

11.5.2 配置数据源控件 385

11.6 Entity Framework Code First 387

11.6.1 创建Code First模型 387

11.6.2 约定-配置 390

11.6.3 Code First中的关系 391

11.6.4 Code First Migrations 392

11.7 本章小结 394

第12章 ASP.NET Dynamic Data 395

12.1 Dynamic Data功能 395

12.1.1 默认应用程序中创建的核心文件 395

12.1.2 应用程序特性 396

12.1.3 运行应用程序 397

12.1.4 运行应用程序的结果 397

12.1.5 向已有页面中添加动态数据 400

12.2 理解模型绑定 401

12.2.1 特性驱动的UI 401

12.2.2 特性驱动的验证 403

12.3 本章小结 404

第13章 使用服务 405

13.1 不同系统之间的通信 405

13.2 建立一个简单的XML Web服务 407

13.2.1 WebService页面指令 408

13.2.2 Web服务的基类文件 409

13.2.3 把定制的DataSet显示为SOAP 409

13.2.4 XML Web服务接口 411

13.3 使用简单的XML Web服务 413

13.3.1 添加Web引用 413

13.3.2 在客户端应用程序中调用Web服务 415

13.4 重载WebMethod 417

13.5 高速缓存Web服务的响应 420

13.6 使用SOAP报头 421

13.6.1 使用SOAP报头建立Web服务 421

13.6.2 通过SOAP报头使用Web服务 422

13.6.3 使用SOAP 1.2请求Web服务 424

13.7 异步使用Web服务 425

13.8 WCF 427

13.8.1 WCF概述 427

13.8.2 建立WCF服务 428

13.8.3 建立WCF使用者 433

13.8.4 添加服务引用 434

13.8.5 使用数据协定 436

13.8.6 定义名称空间 440

13.8.7 使用WCF数据服务 440

13.8.8 创建第一个服务 441

13.8.9 查询接口 447

13.8.10 在ASP.NET中使用WCF数据服务 458

13.9 ASP.NET Web API 460

13.9.1 建立第一个Web ApI项目 461

13.9.2 理解Web API路由 464

13.9.3 使用Web API 465

13.10 本章小结 468

第Ⅳ部分 提供程序 471

第14章 提供程序模型概述 471

14.1 提供程序概述 472

14.2 ASP.NET 4.5中的提供程序模型 473

14.2.1 设置提供程序以使用SQL Server 2005、2008或2012 474

14.2.2 成员资格提供程序 479

14.2.3 角色提供程序 483

14.2.4 个性化提供程序 486

14.2.5 站点地图提供程序 488

14.2.6 会话状态提供程序 489

14.2.7 Web事件提供程序 491

14.2.8 提供程序的配置 498

14.3 本章小结 500

第15章 扩展提供程序模型 501

15.1 提供程序是较大体系结构中的一层 501

15.2 通过基于特性的编程修改提供程序的行为 502

15.2.1 通过SqlMembership-Provider建立简单的密码结构 502

15.2.2 通过SqlMembership-Provider建立强类型的密码结构 505

15.3 ProviderBase类 506

15.4 建立自己的提供程序 508

15.4.1 创建CustomProviders应用程序 508

15.4.2 构造需要的类架构 509

15.4.3 创建XML用户数据存储 512

15.4.4 在web.config文件中定义提供程序实例 512

15.4.5 不实现MembershipProvider类的方法和属性 513

15.4.6 实现MembershipProvider类的方法和属性 514

15.4.7 使用XmlMembership-Provider进行用户登录 519

15.5 扩展预定义的提供程序 520

15.5.1 用新的LimitedSql-RoleProvider提供程序限制角色功能 521

15.5.2 使用新的LimitedSqlRoleProvider提供程序 523

15.6 本章小结 526

第Ⅴ部分 ASP.NET特性 529

第16章 使用母版页 529

16.1 需要母版页的原因 529

16.2 母版页的基础知识 531

16.3 编写母版页 532

16.4 编写内容页面 534

16.4.1 混合页面类型和语言 538

16.4.2 指定要使用的母版页 539

16.4.3 将母版页应用于页面子集 540

16.4.4 使用页面标题 540

16.4.5 使用母版页中的控件和属性 540

16.5 在母版页中指定默认内容 545

16.6 以编程方式将母版页赋予内容页面 547

16.7 母版页的嵌套 547

16.8 浏览器特定的母版页 551

16.9 事件的触发顺序 552

16.10 高速缓存母版页 553

16.11 ASP.NET AJAX和母版页 554

16.12 本章小结 556

第17章 站点导航 557

17.1 基于XML的站点地图 557

17.2 SiteMapPath服务器控件 559

17.2.1 PathSeparator属性 561

17.2.2 PathDirection属性 563

17.2.3 ParentLevelsDisplayed属性 563

17.2.4 ShowToolTips属性 564

17.2.5 SiteMapPath控件的子元素 564

17.3 TreeView服务器控件 565

17.3.1 标识TreeView控件的内置样式 568

17.3.2 研究TreeView控件的各个部分 569

17.3.3 将TreeView控件绑定到XML文件 570

17.3.4 在TreeView中选择多个选项 572

17.3.5 在TreeView控件中指定定制的图标 575

17.3.6 指定用于连接节点的线 576

17.3.7 以编程方式使用TreeView控件 577

17.4 Menu服务器控件 582

17.4.1 对Menu控件应用不同的样式 583

17.4.2 Menu事件 587

17.4.3 把Menu控件绑定到XML文件 588

17.5 SiteMap数据提供程序 589

17.5.1 ShowStartingNode属性 589

17.5.2 StartFromCurrentNode属性 590

17.5.3 StartingNodeOffset属性 591

17.5.4 StartingNodeUrl属性 592

17.6 SiteMap API 592

17.7 URL映射 594

17.8 站点地图的本地化 595

17.8.1 为本地化构建Web.sitemap文件 595

17.8.2 修改web.config文件 596

17.8.3 创建程序集资源(.resx)文件 596

17.8.4 测试结果 597

17.9 安全补偿 598

17.9.1 启动管理员的角色管理功能 598

17.9.2 建立管理员的配置部分 600

17.9.3 启用安全补偿功能 601

17.10 嵌套站点地图文件 602

17.11 本章小结 604

第18章 个性化 605

18.1 个性化模型 605

18.2 创建个性化属性 606

18.2.1 添加简单的个性化属性 607

18.2.2 使用个性化属性 607

18.2.3 添加一组个性化属性 610

18.2.4 使用分组的个性化属性 611

18.2.5 为个性化属性定义类型 611

18.2.6 使用定制的类型 612

18.2.7 提供默认值 613

18.2.8 把个性化属性指定为只读 614

18.3 匿名个性化 614

18.3.1 支持终端用户的匿名身份 614

18.3.2 使用匿名身份识别事件 617

18.3.3 个性化属性的匿名选项 617

18.3.4 有关匿名用户配置信息的警告 618

18.4 编程访问个性化功能 618

18.4.1 迁移匿名用户 619

18.4.2 配置信息的个性化 619

18.4.3 确定是否继续自动保存配置信息 620

18.4.4 在Web Application Projects中使用配置信息 621

18.5 个性化提供程序 622

18.5.1 使用SQL Server Express Edition 622

18.5.2 使用SQL Server 623

18.5.3 使用多个提供程序 625

18.5.4 使用通用提供程序 626

18.6 管理应用程序的配置信息 626

18.6.1 ProfileManager类的属性 627

18.6.2 ProfileManager类的方法 627

18.6.3 建立配置信息管理页面 628

18.6.4 研究配置信息管理页面的代码 630

18.6.5 运行配置信息管理页面 631

18.7 本章小结 631

第19章 成员资格和角色管理 633

19.1 ASP.NET 4.5的身份验证 634

19.1.1 为成员资格建立Web站点 634

19.1.2 添加用户 637

19.1.3 请求凭据 649

19.1.4 处理验证用户 655

19.1.5 显示在线用户数 657

19.1.6 处理密码 658

19.2 ASP.NET 4.5的授权 662

19.2.1 使用LoginView服务器控件 662

19.2.2 为角色管理建立Web站点 664

19.2.3 添加和检索应用程序角色 667

19.2.4 删除角色 669

19.2.5 给角色添加用户 669

19.2.6 获取某个角色的所有用户 670

19.2.7 获取包含某个用户的所有角色 671

19.2.8 从角色中删除用户 672

19.2.9 检查角色中的用户 672

19.2.10 角色的高速缓存方式 673

19.3 使用SimpleMembershipAPI 674

19.4 使用Web Site Administration Tool 675

19.5 Membership API的公有方法 675

19.6 Roles API的公有方法 676

19.7 集成OAuth和OpenID身份验证 677

19.7.1 使用OpenID 677

19.7.2 使用OAuth 681

19.8 本章小结 685

第20章 安全性 687

20.1 应用身份验证措施 688

20.1.1〈authentication〉节点 688

20.1.2 基于Windows的身份验证 689

20.1.3 基于表单的身份验证 696

20.2 验证特定的文件和文件夹 703

20.3 以编程方式授权 704

20.3.1 使用User.Identity属性 705

20.3.2 使用IsInRole方法 706

20.3.3 使用WindowsIdentity显示更多信息 706

20.4 身份和模拟 708

20.5 通过IIS进行保护 710

20.5.1 使用文件扩展名 710

20.5.2 使用IIS 7.x/8 Manager 712

20.5.3 使用ASP.NET MMC管理单元 713

20.6 本章小结 714

第Ⅵ部分 应用程序状态 717

第21章 状态管理 717

21.1 如何选择会话状态 717

21.2 理解ASP.NET中的Session对象 719

21.2.1 会话和事件模型 720

21.2.2 配置会话状态的管理 721

21.2.3 进程中的会话状态 721

21.2.4 进程外的会话状态 727

21.2.5 SQL支持的会话状态 732

21.2.6 使用其他提供程序扩展会话状态 734

21.2.7 无cookie的会话状态 735

21.2.8 选择维护状态的正确方式 736

21.3 Application对象 737

21.4 查询字符串 737

21.5 cookie 738

21.6 回送和跨页面回送 738

21.7 隐藏字段、ViewState和ControlState 740

21.8 为短时间状态存储应用HttpContext.Current.Items 743

21.9 本章小结 744

第22章 高速缓存 745

22.1 高速缓存 745

22.1.1 输出高速缓存 746

22.1.2 部分页面(UserControl)的高速缓存 749

22.1.3 Post-Cache Substitution 750

22.1.4 HttpCachePolicy和客户端高速缓存 752

22.2 使用编程方式进行高速缓存 753

22.2.1 使用Cache对象高速缓存数据 754

22.2.2 控制ASP.NET高速缓存 754

22.2.3 高速缓存依赖性 755

22.2.4 .NET 4.x中新的对象高速缓存选项 758

22.3 使用SQL Server高速缓存依赖性 761

22.3.1 使数据库支持SQL Server高速缓存禁用功能 762

22.3.2 使表支持SQL Server高速缓存禁用功能 762

22.3.3 对SQL Server的影响 763

22.3.4 查看支持SQL Server高速缓存禁用功能的表 764

22.3.5 使表不支持SQL Server高速缓存禁用功能 764

22.3.6 使数据库不支持SQL Server高速缓存禁用功能 764

22.3.7 SQL Server高速缓存禁用功能 765

22.4 配置ASP.NET应用程序 766

22.5 测试SQL Server高速缓存禁用功能 767

22.5.1 给页面添加多个表 769

22.5.2 给SQL Server高速缓存依赖性和Request对象建立关联 770

22.5.3 给SQL Server高速缓存依赖性和Cache对象建立关联 770

22.6 本章小结 773

第Ⅶ部分 客户端开发 777

第23章 ASP.NET AJAX 777

23.1 理解对AJAX的需求 777

23.1.1 AJAX出现之前的请求/响应过程 777

23.1.2 AJAX改变了请求/响应过程 778

23.2 ASP.NET AJAX和Visual Studio 2012 780

23.2.1 客户端技术 781

23.2.2 服务器端技术 781

23.2.3 使用ASP.NET AJAX进行开发 782

23.3 创建ASP.NET AJAX应用程序 782

23.3.1 建立没有使用AJAX的简单ASP.NET页面 784

23.3.2 建立使用AJAX的简单ASP.NET页面 785

23.4 ASP.NET AJAX的服务器控件 790

23.4.1 ScriptManager控件 791

23.4.2 ScriptManagerProxy控件 793

23.4.3 Timer控件 794

23.4.4 UpdatePanel控件 795

23.4.5 UpdateProgress控件 799

23.5 使用多个UpdatePanel控件 801

23.6 使用页面历史记录 804

23.7 脚本合并 809

23.8 本章小结 813

第24章 AJAX控件工具集 815

24.1 下载和安装AJAX控件工具集 816

24.2 ASP.NET AJAX控件 818

24.2.1 AJAX控件工具集的扩展程序 819

24.2.2 AJAX控件工具集中的服务器控件 863

24.3 本章小结 873

第25章 jQuery 875

25.1 jQuery简介 876

25.2 选择元素 880

25.3 修改元素 882

25.3.1 修改内容 882

25.3.2 添加和删除元素 884

25.4 事件处理 886

25.5 AJAX 888

25.6 jQuery UI 895

25.7 本章小结 898

第26章 实时通信 899

26.1 传统的实时通信选项 899

26.1.1 使用Comet 900

26.1.2 Polling 901

26.1.3 服务器发送的事件 901

26.1.4 现有方法的缺点 901

26.2 HTML5 WebSockets 902

26.2.1 WebSockets的概念 902

26.2.2 TCP/IP 903

26.2.3 TCP/HTTP 903

26.2.4 WebSockets协议简介 904

26.2.5 WebSockets数据传输 905

26.2.6 WebSockets API 906

26.2.7 ASP.NET 4.5中的WebSockets 907

26.2.8 使用WebSockets的优点 910

26.3 SignalR 911

26.3.1 什么是SignalR? 911

26.3.2 ASP.NET中的服务器端SignalR 912

26.3.3 ASP.NET中的客户端SignalR 913

26.4 本章小结 914

第27章 开发移动网站 915

27.1 移动Web设计的挑战 916

27.2 响应式设计和适应式设计 916

27.2.1 修改视口 917

27.2.2 使用CSS媒介查询 918

27.3 ASP.NET移动应用程序 920

27.3.1 检测移动浏览器和设备 921

27.3.2 处理移动母版页 921

27.3.3 创建移动Web窗体 923

27.3.4 ASP.NET Web窗体中的FriendlyURLs 924

27.4 ASP.NET MVC 4移动应用程序 925

27.4.1 ASP.NET MVC 4中的适应式显示功能 925

27.4.2 创建移动专用的视图 928

27.4.3 提供显示模式 929

27.4.4 包含jQuery Mobile和ViewSwitcher 931

27.4.5 使用Mobile Application项目模板 934

27.5 测试移动应用程序 934

27.6 本章小结 935

第Ⅷ部分 应用程序的配置与开发 939

第28章 配置 939

28.1 配置概述 939

28.1.1 服务器配置文件 940

28.1.2 应用程序配置文件 943

28.1.3 应用配置设置 943

28.1.4 检测配置文件发生的改动 944

28.1.5 配置文件的格式 944

28.2 公共配置设置 945

28.2.1 连接字符串 945

28.2.2 配置会话状态 946

28.2.3 编译配置 950

28.2.4 定制错误 952

28.2.5 身份验证 952

28.2.6 匿名身份 955

28.2.7 授权 956

28.2.8 锁定配置设置 958

28.2.9 ASP.NET页面配置 958

28.2.10 包含文件 960

28.2.11 配置ASP.NET运行时设置 961

28.2.12 配置ASP.NET工作者进程 963

28.2.13 存储与应用程序相关的设置 966

28.2.14 对配置文件编程 966

28.2.15 保护配置设置 970

28.2.16 编辑配置文件 973

28.3 创建定制部分 975

28.3.1 使用NameValueFile-SectionHandler对象 975

28.3.2 使用Dictionary-SectionHandler对象 976

28.3.3 使用SingleTag-SectionHandler对象 977

28.3.4 使用定制的配置处理程序 977

28.4 使用配置转换 979

28.4.1 添加web.config转换 979

28.4.2 更新配置转换文件 981

28.5 打包和压缩功能 983

28.5.1 什么是打包和压缩功能 983

28.5.2 启用打包和压缩功能 984

28.6 本章小结 985

第29章 调试和错误处理技术 987

29.1 设计期间的支持 987

29.1.1 语法通知 988

29.1.2 Immediate和Command窗口 989

29.1.3 任务列表 989

29.2 跟踪 990

29.2.1 System.Diagnostics.Trace和ASP.NET的Page.Trace 990

29.2.2 页面级的跟踪 991

29.2.3 应用程序的跟踪 991

29.2.4 查看跟踪数据 991

29.2.5 在组件中跟踪 994

29.2.6 跟踪的传送 995

29.2.7 TraceListener 995

29.2.8 诊断选项 999

29.2.9 Web事件 1000

29.3 调试 1001

29.3.1 需要的内容 1002

29.3.2 启动调试会话 1003

29.3.3 有助于调试的工具 1004

29.3.4 使用IntelliTrace执行历史调试 1007

29.3.5 调试多个线程 1008

29.3.6 客户端的JavaScript调试 1008

29.3.7 SQL存储过程的调试 1009

29.4 异常和错误处理 1010

29.4.1 处理页面上的异常 1010

29.4.2 处理应用程序异常 1011

29.4.3 HTTP状态码 1011

29.5 用Page Inspector进行调试 1012

29.6 本章小结 1015

第30章 模块和处理程序 1017

30.1 处理HTTP请求 1017

30.1.1 IIS 6和ASP.NET 1017

30.1.2 IIS 7、IIS 8和ASP.NET 1018

30.1.3 ASP.NET请求处理 1019

30.2 HttpModule 1019

30.3 HttpHandler 1024

30.3.1 一般的处理程序 1024

30.3.2 在IIS中映射文件扩展名 1028

30.4 本章小结 1029

第31章 异步通信 1031

31.1 异步编程 1031

31.1.1 使用异步方式的原因 1031

31.1.2 编写异步代码的场合 1032

31.1.3 异步简史 1032

31.2 ASP.NET中的异步 1034

31.2.1 线程池 1035

31.2.2 编写异步代码 1036

31.2.3 并行 1039

31.2.4 服务器配置 1040

31.2.5 使用异步模式的缺点 1040

31.3 本章小结 1041

第32章 国际化应用程序的建立 1043

32.1 区域性和地区 1043

32.1.1 了解区域性类型 1044

32.1.2 ASP.NET线程 1045

32.1.3 服务器端的区域性声明 1046

32.1.4 客户端的区域性声明 1048

32.1.5 翻译值和行为 1049

32.2 ASP.NET 4.5资源文件 1056

32.2.1 使用本地资源 1056

32.2.2 使用全局资源 1061

32.3 本章小结 1064

第33章 打包和部署ASP.NET应用程序 1065

33.1 部署各个部分 1066

33.2 部署之前的准备步骤 1066

33.3 部署Web应用程序的方法 1067

33.3.1 使用XCopy 1067

33.3.2 使用Copy Web Site选项 1069

33.3.3 部署预编译的Web应用程序 1072

33.3.4 创建ASP.NET Web Package 1073

33.3.5 发布配置文件详解 1076

33.4 部署Windows Azure Web Sites 1082

33.5 本章小结 1084

第Ⅸ部分 其他ASP.NET技术 1087

第34章 ASP.NET MVC 1087

34.1 MVC的定义 1087

34.2 当今Web上的MVC 1088

34.3 MVC和ASP.NET 1089

34.3.1 为方法而不是文件服务 1089

34.3.2 ASP.NET MVC是Web Forms 4.5? 1089

34.3.3 为什么不是Web窗体 1090

34.3.4 ASP.NET MVC是完全不同的 1090

34.3.5 为什么“(ASP.NET>ASP.NET MVC)==True” 1090

34.3.6 约定胜于配置 1092

34.3.7 第三个请求是Charm 1095

34.4 理解路由和URL 1097

34.4.1 路由选择与URL重写的比较 1097

34.4.2 路由的定义 1098

34.5 控制器 1103

34.5.1 控制器的定义:IController接口 1103

34.5.2 控制器类和操作 1104

34.5.3 处理参数 1105

34.5.4 处理多个参数 1106

34.6 视图 1106

34.6.1 指定视图 1108

34.6.2 ASP.NET MVC布局 1109

34.6.3 强类型化视图 1112

34.6.4 使用HTML辅助方法 1113

34.6.5 HtmlHelper类和扩展方法 1113

34.7 本章小结 1114

第35章 ASP.NET Web Pages和Razor 1115

35.1 ASP.NET Web Pages概述 1116

35.2 使用Razor创建HTML窗体 1116

35.3 显示数据 1120

35.3.1 验证 1123

35.3.2 使用布局 1125

35.4 使用辅助方法 1127

35.4.1 核心辅助方法 1127

35.4.2 使用辅助方法添加功能 1130

35.4.3 创建定制的辅助方法 1132

35.5 本章小结 1133

第Ⅹ部分 附 录 1137

附录A 迁移ASP.NET旧项目 1137

附录B COM集成 1145

附录C ASP.NET终极工具 1155

附录D 管理 1165

附录E 动态类型与语言 1189

附录F ASP.NET联机资源 1197

附录G 使用NuGet扩展Visual Studio 1201