《ASP.NET 4高级编程 涵盖C#和VB.NET》PDF下载

  • 购买积分:35 如何计算积分?
  • 作  者:(美)艾维耶等著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2010
  • ISBN:9787302235248
  • 页数:1460 页
图书介绍:本书介绍有关使用和管理数据的内容、展示 ASP.NET 的内置系统、讨论可以利用的一些服务器控件、探讨创建 ASP.NET 应用程序的新方式等。

第1章 应用程序和页面架构 1

1.1 应用程序的位置选项 1

1.1.1 内置的Web服务器 2

1.1.2 IIS 3

1.1.3 FTP 3

1.1.4 Web站点需要FrontPage Extensions 4

1.2 ASP.NET页面结构选项 5

1.2.1 内联编码 6

1.2.2 隐藏代码模型 8

1.3 ASP.NET 4的Page指令 10

1.3.1 @Page指令 11

1.3.2 @Master指令 13

1.3.3 @Control指令 14

1.3.4 @Import指令 15

1.3.5 @Implements指令 17

1.3.6 @Register指令 17

1.3.7 @Assembly指令 18

1.3.8 @PreviousPageType指令 18

1.3.9 @MasterType指令 18

1.3.10 @OutputCache指令 19

1.3.11 @Reference指令 19

1.4 ASP.NET的页面事件 19

1.5 处理回送 21

1.6 跨页面的传送 22

1.7 ASP.NET应用程序文件夹 27

1.7.1 App_Code文件夹 28

1.7.2 App_Data文件夹 32

1.7.3 App_Themes文件夹 32

1.7.4 App_GlobalResources文件夹 32

1.7.5 App_LocalResources文件夹 32

1.7.6 App_WebReferences文件夹 33

1.7.7 App_Browsers文件夹 33

1.8 编译 33

1.9 Build Provider 36

1.9.1 使用内置的Build Provider 38

1.9.2 使用自己的Build Provider 38

1.10 Global.asax 43

1.11 通过Visual Studio 2010使用类 47

1.12 本章小结 50

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

2.1 ASP.NET服务器控件 51

2.1.1 服务器控件的类型 52

2.1.2 使用服务器控件构建页面 53

2.1.3 处理服务器控件的事件 54

2.2 给服务器控件应用样式 56

2.2.1 研究控件的常见属性 56

2.2.2 使用层叠样式表改变样式 57

2.3 CSS在ASP.NET 4中的改变 60

2.4 HTML服务器控件 61

2.4.1 HtmlControl基类 62

2.4.2 HtmlContainerControl类 63

2.4.3 所有的HTML类 63

2.4.4 使用HtmlGenericControl类 64

2.5 识别ASP.NET服务器控件 65

2.6 通过JavaScript处理页面和服务器控件 67

2.6.1 使用Page.ClientScript.RegisterClientScriptBlock 69

2.6.2 使用Page.ClientScript.RegisterStartupScript 70

2.6.3 使用Page.ClientScript.RegisterClientScriptInclude 72

2.7 客户端回调 72

2.7.1 比较典型的回送和回调 73

2.7.2 使用回调功能:一种简单的方法 75

2.7.3 使用带一个参数的回调功能 79

2.7.4 使用回调功能:一个复杂的例子 82

2.8 本章小结 86

第3章 ASP.NET Web服务器控件 87

3.1 Web服务器控件概述 87

3.2 Label服务器控件 88

3.3 Literal服务器控件 90

3.4 TextBox服务器控件 91

3.4.1 使用Focus()方法 91

3.4.2 使用AutoPostBack 92

3.4.3 使用AutoCompleteType 93

3.5 Button服务器控件 94

3.5.1 CausesValidation属性 94

3.5.2 CommandName属性 94

3.5.3 使用客户端JavaScript的按钮 95

3.6 LinkButton服务器控件 97

3.7 ImageButton服务器控件 97

3.8 HyperLink服务器控件 99

3.9 DropDownList服务器控件 99

3.10 从集合中可视化地删除数据项 101

3.11 ListBox服务器控件 103

3.11.1 允许用户选择多项 103

3.11.2 使用ListBox控件的例子 103

3.11.3 给集合添加项 105

3.12 CheckBox服务器控件 106

3.12.1 如何确定复选框是否被选中 107

3.12.2 给复选框赋值 107

3.12.3 排列复选框的文本 108

3.13 CheckBoxList服务器控件 108

3.14 RadioButton服务器控件 110

3.15 RadioButtonList服务器控件 112

3.16 Image服务器控件 113

3.17 Table服务器控件 114

3.18 Calendar服务器控件 116

3.18.1 从Calendar控件中选择一个日期 117

3.18.2 从Calendar控件中选择要输出的日期格式 118

3.18.3 选择日期、星期或月份 118

3.18.4 使用日期范围 119

3.18.5 修改日历的样式和操作方式 120

3.19 AdRotator服务器控件 123

3.20 Xml服务器控件 125

3.21 Panel服务器控件 126

3.22 PlaceHolder服务器控件 128

3.23 BulletedList服务器控件 128

3.24 HiddenField服务器控件 133

3.25 FileUpload服务器控件 134

3.25.1 使用FileUpload控件上传文件 134

3.25.2 给上传文件指定正确的ASP.NET权限 137

3.25.3 理解文件大小的限制 138

3.25.4 从同一个页面上传多个文件 139

3.25.5 把上传的文件放在Stream对象中 142

3.25.6 把文件内容从Stream对象移到Byte数组中 142

3.26 MultiView和View服务器控件 142

3.27 Wizard服务器控件 146

3.27.1 定制边栏导航 147

3.27.2 AllowReturn属性 148

3.27.3 使用StepType属性 148

3.27.4 给Wizard控件添加标题 148

3.27.5 使用向导的导航系统 149

3.27.6 使用Wizard控件的事件 150

3.27.7 使用Wizard控件显示窗体元素 151

3.28 ImageMap服务器控件 155

3.29 Chart服务器控件 157

3.30 本章小结 160

第4章 验证服务器控件 161

4.1 有效性验证 161

4.2 客户端和服务器端的验证 162

4.3 ASP.NET验证服务器控件 163

4.3.1 验证原因 164

4.3.2 RequiredFieldValidator服务器控件 164

4.3.3 CompareValidator服务器控件 169

4.3.4 RangeValidator服务器控件 172

4.3.5 RegularExpressionValidator服务器控件 175

4.3.6 CustomValidator服务器控件 176

4.3.7 ValidationSummary服务器控件 180

4.4 关闭客户端验证功能 183

4.5 为错误通知使用图像和声音 184

4.6 使用验证组 185

4.7 本章小结 188

第5章 使用母版页 189

5.1 需要母版页的原因 189

5.2 母版页基础 191

5.3 编写母版页 192

5.4 编写内容页面 195

5.4.1 混合页面类型和语言 198

5.4.2 指定要使用的母版页 200

5.4.3 使用页面标题 201

5.4.4 使用母版页中的控件和属性 201

5.5 在母版页中指定默认内容 207

5.6 以编程方式将母版页赋予内容页面 209

5.7 母版页的嵌套 210

5.8 浏览器特定的母版页 213

5.9 事件的触发顺序 214

5.10 高速缓存母版页 215

5.11 AS P.NET AJAX和母版页 215

5.12 本章小结 218

第6章 主题和外观 219

6.1 使用ASP.NET中的主题 219

6.1.1 给单个ASP.NET页面应用主题 219

6.1.2 把主题应用于整个应用程序 221

6.1.3 删除服务器控件中的主题 221

6.1.4 删除Web页面上的主题 222

6.1.5 使用母版页时理解主题 222

6.1.6 理解StyleSheetTheme属性 223

6.2 创建自己的主题 223

6.2.1 创建正确的文件夹结构 223

6.2.2 创建外观 224

6.2.3 在主题中包含CSS文件 226

6.2.4 使主题包含图像 228

6.3 定义多个外观选项 230

6.4 编程使用主题 232

6.4.1 以编程方式指定页面的主题 232

6.4.2 编程指定控件的SkinID 233

6.5 主题、外观和定制控件 233

6.6 本章小结 236

第7章 ASP.NET 4中的数据绑定 237

7.1 数据源控件 237

7.1.1 SqlDataSource控件 239

7.1.2 AccessDataSource控件 247

7.1.3 LinqDataSource控件 248

7.1.4 EntityDataSource控件 253

7.1.5 XmlDataSource控件 255

7.1.5 ObjectDataSource控件 256

7.1.6 SiteMapDataSource控件 259

7.2 数据源控件的高速缓存 259

7.3 存储连接信息 260

7.4 组合使用绑定的列表控件和数据源控件 262

7.4.1 GridView控件 262

7.4.2 编辑GridView中的数据行 275

7.4.3 删除GridView数据 282

7.4.4 GridView的其他格式化功能 284

7.4.5 DetailsView控件 284

7.4.6 使用DetailsView插入、更新和删除数据 288

7.4.7 ListView控件 290

7.4.8 FormView控件 297

7.5 其他数据绑定控件 301

7.5.1 TreeView控件 301

7.5.2 AdRotator控件 302

7.5.3 Menu控件 302

7.6 内联数据绑定语法 303

7.6.1 数据绑定语法 303

7.6.2 XML数据绑定 304

7.7 表达式和表达式生成器 304

7.8 本章小结 309

第8章 使用ADO.NET管理数据 311

8.1 ADO.NET的基本功能 312

8.1.1 常见的ADO.NET任务 312

8.1.2 ADO.NET的基本名称空间和类 316

8.1.3 使用Connection对象 317

8.1.4 使用Command对象 319

8.1.5 使用DataReader对象 320

8.1.6 使用DataAdapter对象 322

8.1.7 使用参数 324

8.1.8 了解DataSet和DataTable 327

8.1.9 将Oracle用作ASP.NET的数据库 331

8.2 DataList服务器控件 332

8.2.1 可用的模板 333

8.2.2 使用ItemTemplate 333

8.2.3 使用其他布局模板 336

8.2.4 使用多个列 338

8.3 ListView服务器控件 339

8.3.1 连接ListView到数据库 339

8.3.2 创建布局模板 340

8.3.3 创建ItemTemplate 342

8.3.4 创建EditItemTemplate 343

8.3.5 创建EmptyItemTemplate 344

8.3.6 创建InsertItemTemplate 344

8.3.7 查看结果 344

8.4 将Visual Studio用于ADO.NET任务 346

8.4.1 建立与数据源的连接 346

8.4.2 使用DataSet设计器 347

8.4.3 使用DataSet对象CustomerOrders 352

8.5 命令的异步执行 355

8.5.1 SqlCommand类的异步方法 355

8.5.2 IAsyncResult接口 357

8.5.3 AsyncCallback 357

8.5.4 WaitHandle类 357

8.5.5 ADO.NET中异步处理的方式 358

8.5.6 取消异步处理 373

8.5.7 异步连接 373

8.6 本章小结 374

第9章 使用LINQ查询 375

9.1 LINQ to Objects 375

9.1.1 传统的查询方法 375

9.1.2 使用LINQ替代传统的查询 382

9.1.3 数据分组 388

9.1.4 使用其他LINQ运算符 389

9.1.5 建立LINQ连接 389

9.1.6 使用LINQ分页 391

9.2 LINQ to XML 391

9.3 LINQ to SQL 396

9.3.1 通过LINQ插入、更新和删除查询 403

9.3.2 扩展LINQ 406

9.4 本章小结 406

第10章 使用XML和LINQ to XML 409

10.1 XML的基础知识 410

10.1.1 XML InfoSet 412

10.1.2 XSD/XML模式定义 413

10.1.3 在Visual Studio 2010中编辑XML和XML模式 414

10.2 XmlReader和XmlWriter 417

10.2.1 使用XDocument替代XmlReader 419

10.2.2 使用模式和XmlTextReader 420

10.2.3 使用XDocument根据模式来验证 422

10.2.4 包含NameTable优化 423

10.2.5 从XML中提取.NET CLR类型 425

10.2.6 ReadSubtree和XmlSerialization 426

10.2.7 通过LINQ to XML从XML中创建CLR对象 428

10.2.8 使用XmlWriter创建XML 428

10.2.9 使用LINQ for XML创建XML 431

10.2.10 XmlReader和XmlWriter的改进 433

10.3 XmlDocument和XPathDocument 434

10.3.1 DOM存在的问题 434

10.3.2 XPath、XpathDocument和XmlDocument 434

10.4 DataSet 438

10.4.1 将DataSet保存到XML中 438

10.4.2 XmlDataDocument 440

10.5 XmlDataSource控件 441

10.6 XSLT 444

10.6.1 XslCompiledTransform 446

10.6.2 XSLT调试 450

10.7 数据库和XML 450

10.7.1 FOR XML AUTO子句 451

10.7.2 SQL Server和XML数据类型 455

10.8 本章小结 460

第11章 提供程序模型概述 463

11.1 提供程序概述 464

11.2 ASP.NET 4中的提供程序模型 465

11.2.1 设置提供程序以使用Microsoft SQL Server 7.0、2000、2005或2008 466

11.2.2 成员资格提供程序 472

11.2.3 角色提供程序 475

11.2.4 个性化提供程序 479

11.2.5 站点地图提供程序 480

11.2.6 会话状态提供程序 481

11.2.7 Web事件提供程序 484

11.2.8 Configuration提供程序 491

11.2.9 Web Parts提供程序 493

11.3 提供程序的配置 495

11.4 本章小结 495

第12章 扩展提供程序模型 497

12.1 提供程序是较大体系结构中的一层 497

12.2 通过基于属性的编程修改提供程序的行为 498

12.2.1 通过SqlMembershipProvider建立简单的密码结构 498

12.2.2 通过SqlMembershipProvider建立强类型的密码结构 501

12.3 ProviderBase类 502

12.4 建立自己的提供程序 503

12.4.1 创建CustomProviders应用程序 504

12.4.2 构造需要的类架构 504

12.4.3 创建XML用户数据存储 508

12.4.4 在web.config文件中定义提供程序实例 508

12.4.5 没有实现MembershipProvider类的方法和属性 509

12.4.6 实现MembershipProvider类的方法和属性 510

12.4.7 使用XmlMembership-Provider进行用户登录 516

12.5 扩展预定义的提供程序 517

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

12.5.2 使用新的LimitedSqlRoleProvider提供程序 521

12.6 本章小结 524

第13章 站点导航 525

13.1 基于XML的站点地图 525

13.2 SiteMapPath服务器控件 527

13.2.1 PathSeparator属性 529

13.2.2 PathDirection属性 531

13.2.3 ParentLevelsDisplayed属性 531

13.2.4 ShowToolTips属性 532

13.2.5 SiteMapPath控件的子元素 532

13.3 TreeView服务器控件 533

13.3.1 标识TreeView控件的内置样式 536

13.3.2 研究TreeView控件的各个部分 537

13.3.3 将TreeView控件绑定到XML文件上 538

13.3.4 在TreeView中选择多个选项 540

13.3.5 在TreeView控件中指定定制的图标 542

13.3.6 指定用于连接节点的线 544

13.3.7 以编程方式使用TreeView控件 545

13.4 Menu服务器控件 550

13.4.1 对Menu控件应用不同的样式 551

13.4.2 Menu事件 556

13.4.3 把Menu控件绑定到XML文件上 556

13.5 SiteMap数据提供程序 558

13.5.1 ShowStartingNode属性 558

13.5.2 StartFromCurrentNode属性 559

13.5.3 StartingNodeOffset属性 560

13.5.4 StartingNodeUrl属性 560

13.6 SiteMap API 561

13.7 URL映射 563

13.8 站点地图的本地化 564

13.8.1 为本地化构建Web.sitemap文件 564

13.8.2 修改Web.config文件 565

13.8.3 创建程序集资源(.resx)文件 565

13.8.4 测试结果 566

13.9 安全补偿 567

13.9.1 启动管理员的角色管理功能 567

13.9.2 建立管理员的配置部分 569

13.9.3 启用安全补偿功能 570

13.10 嵌套站点地图文件 572

13.11 本章小结 573

第14章 个性化 575

14.1 个性化模型 575

14.2 创建个性化属性 576

14.2.1 添加简单的个性化属性 577

14.2.2 使用个性化属性 577

14.2.3 添加一组个性化属性 580

14.2.4 使用分组的个性化属性 581

14.2.5 为个性化属性定义类型 582

14.2.6 使用定制的类型 582

14.2.7 提供默认值 585

14.2.8 把个性化属性指定为只读 585

14.3 匿名个性化 585

14.3.1 支持终端用户的匿名身份 586

14.3.2 使用匿名身份识别事件 588

14.3.3 个性化属性的匿名选项 589

14.3.4 有关匿名用户配置信息的警告 590

14.4 编程访问个性化功能 590

14.4.1 迁移匿名用户 591

14.4.2 配置信息的个性化 592

14.4.3 确定是否继续自动保存配置信息值 593

14.5 个性化提供程序 594

14.5.1 使用SQL Server Express Edition 594

14.5.2 使用Microsoft的SQL Server 7.0/2000/2005/2008 595

14.5.3 使用多个提供程序 597

14.6 管理应用程序的配置信息 597

14.6.1 ProfileManager类的属性 598

14.6.2 ProfileManager类的方法 598

14.6.3 建立ProfileManager.aspx页面 599

14.6.4 研究ProfileManager.aspx页面的代码 601

14.6.5 运行ProfileManager.aspx页面 602

14.7 本章小结 603

第15章 成员资格和角色管理 605

15.1 ASP.NET 4的身份验证 606

15.1.1 为成员资格建立Web站点 606

15.1.2 添加用户 608

15.1.3 请求凭据 621

15.1.4 处理验证用户 628

15.2 显示在线用户数 630

15.3 ASP.NET 4的授权 636

15.3.1 使用LoginView服务器控件 636

15.3.2 为角色管理建立Web站点 638

15.3.3 添加和检索应用程序角色 641

15.3.4 删除角色 643

15.3.5 给角色添加用户 643

15.3.6 获取某个角色的所有用户 644

15.3.7 获取包含某个用户的所有角色 645

15.3.8 从角色中删除用户 646

15.3.9 检查角色中的用户 647

15.3.10 角色的高速缓存方式 648

15.4 使用Web Site Administration Tool 648

15.5 成员资格API的公有方法 649

15.6 角色API的公有方法 650

15.7 本章小结 650

第16章 Portal Framework和Web Part 651

16.1 Web Part简介 651

16.2 建立动态的模块化Web站点 653

16.2.1 WebPartManager控件 653

16.2.2 使用区域布局 654

16.2.3 WebPartZone控件 657

16.2.4 允许用户改变页面的模式 659

16.2.5 修改区域 668

16.3 使用Portal Framework中的类 674

16.4 创建定制的Web Part 677

16.5 连接Web Part 681

16.5.1 建立提供程序Web Part 682

16.5.2 建立用户Web Part 685

16.5.3 连接ASP.NET页面上的Web Part 686

16.5.4 理解连接Web Part时处理母版页的难点 689

16.6 本章小结 690

第17章 使用ASP.NET进行HTML和CSS设计 691

17.1 警告 692

17.2 HTML和CSS概述 692

17.2.1 创建样式表 693

17.2.2 CSS规则 696

17.2.3 CSS继承 703

17.2.4 元素的布局和定位 704

17.2.5 在Visual Studio中使用HTML和CSS 711

17.3 本章小结 717

第18章 ASP.NET AJAX 719

18.1 理解对AJAX的需求 719

18.1.1 AJAX出现之前的请求/响应过程 720

18.1.2 AJAX改变了请求/响应过程 721

18.2 ASP.NET AJAX和Visual Studio 2010 723

18.2.1 客户端技术 723

18.2.2 服务器端技术 724

18.2.3 使用ASP.NET AJAX进行开发 725

18.3 创建ASP.NET AJAX应用程序 725

18.3.1 建立没有使用AJAX的简单ASP.NET页面 727

18.3.2 建立使用AJAX的简单ASP.NET页面 728

18.4 ASP.NET AJAX的服务器端控件 733

18.4.1 ScriptManager控件 733

18.4.2 ScriptManagerProxy控件 735

18.4.3 Timer控件 736

18.4.4 UpdatePanel控件 738

18.4.5 UpdateProgress控件 741

18.5 使用多个UpdatePanel控件 744

18.6 使用页面历史记录 747

18.7 脚本合并 752

18.8 本章小结 756

第19章 ASP.NET AJAX控件工具集 757

19.1 下载和安装AJAX控件工具集 758

19.2 ASP.NET AJAX控件 760

19.2.1 ASP.NET AJAX控件工具集的扩展程序 761

19.2.2 ASP.NET AJAX控件工具集中的服务器控件 805

19.3 本章小结 815

第20章 安全性 817

20.1 应用身份验证措施 818

20.1.1 <authentication>节点 819

20.1.2 基于Windows的身份验证 819

20.1.3 基于表单的身份验证 826

20.1.4 Passport身份验证 834

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

20.3 编程授权 835

20.3.1 使用User.Identity属性 835

20.3.2 使用User.IsInRole()方法 837

20.3.3 使用WindowsIdentity显示更多信息 837

20.4 身份和模拟 840

20.5 通过IIS进行保护 841

20.5.1 IP地址和域名限制 842

20.5.2 使用文件扩展名 843

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

20.5.4 使用IIS 7.0 Manager 845

20.6 本章小结 846

第21章 状态管理 847

21.1 如何选择会话状态 847

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

21.2.1 会话和事件模型 850

21.2.2 配置会话状态的管理 851

21.2.3 进程中的会话状态 851

21.2.4 进程外的会话状态 859

21.2.5 SQL支持的会话状态 864

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

21.2.7 无cookie的会话状态 867

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

21.3 Application对象 869

21.4 查询字符串 870

21.5 cookie 870

21.6 回送和跨页面的回送 870

21.7 隐藏的字段、ViewState和ControlState 873

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

21.9 本章小结 878

第22章 高速缓存 879

22.1 高速缓存 879

22.1.1 输出高速缓存 879

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

22.1.3 Post-Cache Substitution 884

22.1.4 HttpCachePolicy和客户端高速缓存 886

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

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

22.2.2 控制ASP.NET高速缓存 888

22.2.3 高速缓存依赖性 889

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

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

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

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

22.3.3 对SQL Server 2000的影响 898

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

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

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

22.3.7 SQL Server 2005和2008高速缓存禁用功能 900

22.4 配置ASP.NET应用程序 901

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

22.5.1 给页面添加多个表 904

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

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

22.6 本章小结 908

第23章 调试和错误处理技术 909

23.1 设计期间的支持 909

23.1.1 语法通知 910

23.1.2 Immediate和Command窗口 911

23.1.3 任务列表 912

23.2 跟踪 912

23.2.1 System.Diagnostics.Trace和ASP.NET的Page.Trace 913

23.2.2 页面级的跟踪 913

23.2.3 应用程序的跟踪 913

23.2.4 查看跟踪数据 913

23.2.5 在组件中跟踪 916

23.2.6 跟踪的传送 918

23.2.7 TraceListener 918

23.2.8 诊断选项 922

23.2.9 Web事件 923

23.3 调试 925

23.3.1 需要的内容 925

23.3.2 IIS和ASP.NET开发服务器 926

23.3.3 启动调试会话 927

23.3.4 有助于调试的工具 929

23.3.5 使用IntelliTrace执行历史调试 932

23.3.6 调试多个线程 933

23.3.7 客户端的Javascript调试 934

23.3.8 SQL存储过程的调试 936

23.4 异常和错误处理 937

23.4.1 处理页面上的异常 937

23.4.2 处理应用程序异常 938

23.4.3 HTTP状态码 938

23.5 本章小结 940

第24章 文件I/O和流 941

24.1 使用驱动器、目录和文件 941

24.1.1 DriveInfo类 942

24.1.2 Directory和DirectoryInfo类 945

24.1.3 File和FileInfo类 952

24.1.4 使用路径 958

24.1.5 文件和目录的属性、特性和访问控制列表 962

24.2 读写文件 969

24.2.1 Stream类 969

24.2.2 Reader和Writer类 976

24.2.3 压缩流 981

24.2.4 内存映射文件 983

24.3 处理串行端口 985

24.4 网络通信 987

24.4.1 WebRequest和WebResponse 988

24.4.2 发送邮件 994

24.5 本章小结 994

第25章 用户控件和服务器控件 997

25.1 用户控件 997

25.1.1 创建用户控件 998

25.1.2 与用户控件交互 1000

25.1.3 动态加载用户控件 1001

25.2 服务器控件 1006

25.2.1 Server Control项目的建立 1006

25.2.2 控件的特性 1011

25.2.3 控件的显示 1012

25.2.4 添加标记特性 1015

25.2.5 关于控件ID 1016

25.2.5 给HTML设置样式 1017

25.2.6 主题和外观 1020

25.2.7 添加客户端功能 1021

25.2.8 浏览器功能 1029

25.2.9 使用ViewState 1032

25.2.10 引发回送事件 1035

25.2.11 处理回送数据 1038

25.2.12 复合控件 1041

25.2.13 模板化控件 1043

25.2.14 在设计期间创建控件 1048

25.3 本章小结 1065

第26章 模块和处理程序 1067

26.1 处理HTTP请求 1067

26.1.1 IIS 6和ASP.NET 1067

26.1.2 IIS 7和ASP.NET 1068

26.1.3 ASP.NET请求处理 1069

26.2 HttpModule 1069

26.3 HttpHandler 1073

26.3.1 一般的处理程序 1074

26.3.2 在IIS中映射文件扩展名 1078

26.4 本章小结 1080

第27章 ASP.NET MVC 1081

27.1 MVC的定义 1081

27.2 当今Web上的MVC 1082

27.3 MVC和ASP.NET 1083

27.3.1 为方法而不是文件服务 1083

27.3.2 ASP.NET MVC是否是Web Forms 4.0 1084

27.3.3 为什么不是WebForms 1084

27.3.4 ASP.NET MVC是完全不同的 1085

27.3.5 为什么“(ASP.NET>ASP.NET MVC)==True” 1085

27.3.6 约定胜于配置 1086

27.3.7 第三个请求是Charm 1089

27.4 理解路由和URL 1091

27.4.1 路由选择与URL重写的比较 1092

27.4.2 路由的定义 1092

27.5 控制器 1096

27.5.1 控制器的定义:IController接口 1096

27.5.2 控制器类和操作 1097

27.5.3 处理参数 1098

27.5.4 处理多个参数 1098

27.6 视图 1099

27.6.1 指定视图 1100

27.6.2 强类型化视图 1101

27.6.3 使用HTML辅助方法 1102

27.6.4 HtmlHelper类和扩展方法 1102

27.7 本章小结 1103

第28章 使用业务对象 1105

28.1 使用ASP.NET 4中的业务对象 1105

28.1.1 创建预编译的.NET业务对象 1106

28.1.2 在ASP.NET应用程序中使用预编译的业务对象 1108

28.2 COM互操作性:在.NET中使用COM 1109

28.2.1 RCW 1109

28.2.2 在ASP.NET代码中使用COM对象 1110

28.2.3 错误处理 1115

28.2.4 使用.NET应用程序部署COM组件 1117

28.3 在非托管代码中使用.NET 1119

28.3.1 CCW 1119

28.3.2 在COM对象中使用.NET组件 1121

28.3.3 早期绑定和后期绑定 1124

28.3.4 错误处理 1125

28.4 使用COM应用程序部署.NET组件 1126

28.5 本章小结 1128

第29章 ADO.NET Entity Framework 1129

29.1 能否使用同一种语言 1130

29.1.1 概念层和逻辑层 1131

29.1.2 层之间的映射 1131

29.2 创建第一个实体数据模型 1131

29.2.1 使用EDM向导 1132

29.2.2 使用ADO.NET实体设计器 1134

29.2.3 使用EDM建立ASP.NET页面 1135

29.3 理解关系 1137

29.3.1 一对一和一对多关系 1137

29.3.2 多对一和多对多关系 1141

29.4 在EDM中使用继承功能 1143

29.5 使用存储过程 1146

29.6 使用EntityDataSource控件 1150

29.6.1 创建基本页面 1150

29.6.2 配置数据源控件 1151

29.7 本章小结 1154

第30章 ASP.NET Dynamic Data 1155

30.1 使用Visual Studio 2010创建基本应用程序 1155

30.1.1 查看默认应用程序中创建的核心文件 1156

30.1.2 Dynamic Data应用程序 1157

30.1.3 连接数据库 1163

30.1.4 在Global.asax文件中注册数据模型 1166

30.1.5 样式和布局 1167

30.1.6 运行应用程序的结果 1168

30.2 使用动态数据路由 1170

30.3 控制显示方式 1174

30.4 向已有页面中添加动态数据 1176

30.5 本章小结 1178

第31章 使用服务 1179

31.1 不同系统之间的通信 1179

31.2 建立一个简单的XML Web服务 1181

31.2.1 WebService页面指令 1182

31.2.2 查看Web服务的基类文件 1182

31.2.3 把定制的数据集显示为SOAP 1184

31.2.4 XML Web服务接口 1186

31.3 使用简单的XML Web服务 1188

31.3.1 添加Web引用 1189

31.3.2 在客户端应用程序中调用Web服务 1190

31.4 WebMethod的重载 1192

31.5 高速缓存Web服务的响应 1195

31.6 使用SOAP报头 1196

31.6.1 使用SOAP报头建立Web服务 1196

31.6.2 通过SOAP报头使用Web服务 1198

31.6.3 使用SOAP 1.2请求Web服务 1200

31.7 异步使用Web服务 1202

31.8 WCF 1204

31.8.1 迈向SOA的一大步 1204

31.8.2 WCF概述 1205

31.8.3 建立WCF服务 1206

31.9 建立WCF使用者 1212

31.9.1 添加服务引用 1212

31.9.2 使用数据合同 1215

31.9.3 定义名称空间 1220

31.10 使用WCF数据服务 1220

31.10.1 创建第一个服务 1221

31.10.2 添加实体数据模型 1221

31.10.3 创建服务 1223

31.10.4 查询接口 1228

31.10.5 读取表中数据 1229

31.10.6 从表中读取指定的项 1230

31.10.7 使用关系 1232

31.10.8 扩展关联 1234

31.10.9 对结果集排序 1237

31.10.10 移动结果集 1238

31.10.11 筛选内容 1239

31.10.12 在ASP.NET中使用WCF数据服务 1240

31.11 本章小结 1243

第32章 应用程序的国际化 1245

32.1 区域性和地区 1245

32.1.1 了解区域性类型 1246

32.1.2 ASP.NET线程 1247

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

32.1.4 客户端的区域性声明 1250

32.1.5 翻译值和行为 1251

32.2 ASP.NET 4资源文件 1258

32.2.1 使用本地资源 1258

32.2.2 使用全局资源 1264

32.3 资源编辑器 1266

32.4 本章小结 1266

第33章 配置 1267

33.1 配置概述 1267

33.1.1 服务器配置文件 1268

33.1.2 应用程序配置文件 1271

33.1.3 应用配置设置 1271

33.1.4 检测配置文件的改动 1272

33.1.5 配置文件的格式 1272

33.2 公共配置设置 1273

33.2.1 连接字符串 1273

33.2.2 配置会话状态 1274

33.2.3 编译配置 1278

33.2.4 浏览器的功能 1280

33.2.5 定制错误 1282

33.2.6 身份验证 1283

33.2.7 匿名身份 1286

33.2.8 授权 1287

33.2.9 锁定配置设置 1289

33.2.10 ASP.NET页面配置 1289

33.2.11 包含文件 1291

33.2.12 配置ASP.NET运行时设置 1292

33.2.13 配置ASP.NET工作者进程 1294

33.2.14 存储与应用程序相关的设置 1297

33.2.15 配置文件的编程 1297

33.2.16 保护配置设置 1303

33.2.17 编辑配置文件 1307

33.3 创建定制部分 1309

33.3.1 使用NameValueFileSection-Handler对象 1309

33.3.2 使用DictionarySection-Handler对象 1310

33.3.3 使用SingleTagSection-Handler对象 1311

33.3.4 使用定制的配置处理程序 1312

33.4 本章小结 1314

第34章 检测 1315

34.1 使用事件日志 1315

34.1.1 读取事件日志 1316

34.1.2 写入事件日志 1318

34.2 使用性能计数器 1321

34.2.1 通过管理工具查看性能计数器 1321

34.2.2 建立基于浏览器的管理工具 1323

34.3 应用程序的跟踪 1328

34.4 理解健康监控 1328

34.4.1 健康监控系统的提供程序模型 1329

34.4.2 健康监控的配置 1330

34.4.3 通过配置写入事件:运行示例 1336

34.4.4 把事件路由到SQL Server中 1337

34.4.5 缓冲Web事件 1340

34.4.6 通过电子邮件发送Web事件 1342

34.5 本章小结 1346

第35章 管理 1347

35.1 ASP.NET Web站点管理工具 1347

35.1.1 Home选项卡 1348

35.1.2 Security选项卡 1349

35.1.3 Application选项卡 1357

35.1.4 Provider选项卡 1360

35.2 在Windows 7的IIS中配置ASP.NET 1361

35.2.1 .NET Compilation 1362

35.2.2 .NET Globalization 1363

35.2.3 .NET Profile 1363

35.2.4 .NET Roles 1363

35.2.5 .NET Trust Levels 1364

35.2.6 .NET Users 1364

35.2.7 Application Settings 1365

35.2.8 Connection Strings 1366

35.2.9 Pages and Controls 1366

35.2.10 Providers 1366

35.2.11 Session State 1367

35.2.12 SMTP E-mail 1368

35.3 本章小结 1368

第36章 打包和部署ASP.NET应用程序 1369

36.1 部署各个部分 1369

36.2 部署之前的准备步骤 1370

36.3 部署Web应用程序的方法 1371

36.3.1 使用XCOPY 1371

36.3.2 使用VS Copy Web Site选项 1373

36.3.3 部署预编译的Web应用程序 1376

36.3.4 创建ASP.NET Web Package 1377

36.3.5 建立安装程序 1380

36.4 安装程序的选项 1387

36.4.1 使用部署项目的属性 1387

36.4.2 File System编辑器 1390

36.4.3 Registry编辑器 1393

36.4.4 File Types编辑器 1394

36.4.5 User Interface编辑器 1394

37.4.6 Custom Actions编辑器 1396

36.4.7 Launch Conditions编辑器 1397

36.5 本章小结 1397

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

A.1 迁移过程并不困难 1399

A.1.1 同时运行.NET Framework的多个版本 1400

A.1.2 升级ASP.NET应用程序 1400

A.2 混合版本——表单验证 1401

A.3 升级——ASP.NET的保留文件夹 1402

A.4 ASP.NET4页面是XHTML 1403

A.5 在ASP.NET 4中没有硬编码的.js文件 1404

A.6 在Visual Studio 2010中转换ASP.NET 1.x应用程序 1405

A.7 从ASP.NET 2.0/3.5迁移到ASP.NET 4 1408

A.8 本章小结 1409

附录B ASP.NET终极工具 1411

B.1 简化调试 1411

B.1.1 Firebug 1411

B.1.2 YSlow 1412

B.1.3 IE8 Developer Tools和Firefox WebDeveloper 1413

B.1.4 jQuery和jQuery UI 1415

B.1.5 探查器:dotTrace或ANTS 1416

B.2 参考资料 1416

B.2.1 PositionlsEverything.net、QuirksMode.org和HTMLDog.com 1417

B.2.2 Visibone 1417

B.2.3 www.asp.net 1417

B.3 整理代码 1418

B.3.1 来自DevExpress的Refactor! for ASP.NET 1418

B.3.2 Code Style Enforcer 1418

B.3.3 Microsoft Ajax Minifier——JavaScript最小化工具 1419

B.4 扩展ASP.NET 1420

B.4.1 ASP.NET AJAX控件工具集 1420

B.4.2 Atif Aziz的ELMAH——错误记录模块和处理程序 1421

B.4.3 Helicon的ISAPI_Rewrite和IIS7 URLRewrite 1422

B.5 通用的开发人员工具 1423

B.5.1 Telerik的联机代码转换器 1423

B.5.2 WinMerge和其他合并工具 1424

B.5.3 Reflector 1425

B.5.4 Process Explorer 1426

B.6 本章小结 1427

附录C Silverlight 3和ASP.NET 1429

C.1 入门 1429

C.2 使用Silverlight插件 1432

C.3 Silverlight和JavaScript 1440

C.3.1 JavaScript API 1440

C.3.2 HTML Bridge 1442

C.4 本章小结 1448

附录D 动态类型与语言 1451

D.1 隐式类型 1451

D.2 动态语言运行时 1452

D.3 动态查找 1454

D.4 本章小结 1458

附录E ASP.NET联机资源 1459

E.1 作者的博客和Twitter ID 1459

E.2 ASP.NET方面有影响力的博客 1459

E.3 Web站点 1459

E.4 Twitter上值得关注的人员 1460