《ASP.NET 3.5 SP1高级编程 第6版》PDF下载

  • 购买积分:36 如何计算积分?
  • 作  者:(美)Bill evjen ,Scott hanselan,Devin rader著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2010
  • ISBN:7302215480
  • 页数:1507 页
图书介绍:本书概述了ASP.NET SP1的功能,提供了C#和VB示例,论述了ADO.NET Entity Framework、ADO.NET Dynamic Data和ADO.NET Data Services等新内容。

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

1.1 应用程序的位置选项 1

1.1.1 内置的Web服务器 1

1.1.2 IIS 3

1.1.3 FTP 3

1.1.4 Web站点需要FrontPage Extensions 4

1.2 ASP.NET页面结构选项 4

1.2.1 内联编码 6

1.2.2 隐藏代码模型 8

1.3 ASP.NET 3.5的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指令 16

1.3.6 @Register指令 17

1.3.7 @Assembly指令 17

1.3.8 @PreviousPageType指令 17

1.3.9 @MasterType指令 18

1.3.10 @OutputCache指令 18

1.3.11 @Reference指令 18

1.4 ASP.NET页面的事件 19

1.5 处理回送 20

1.6 跨页面的传送 21

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

1.7.1 \App_Code文件夹 27

1.7.2 \App_Data文件夹 31

1.7.3 \App_Themes文件夹 32

1.7.4 \App_GlobalResources文件夹 32

1.7.5 \App_LocalResources文件夹 32

1.7.6 \App_WebReferences文件夹 32

1.7.7 \App_Browsers文件夹 32

1.8 编译 33

1.9 Build Provider 36

1.9.1 使用内置的Build Provider 37

1.9.2 使用自己的Build Provider 37

1.10 Global.asax 42

1.11 通过Visual Studio 2008使用类 46

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 给服务器控件应用样式 57

2.2.1 控件的常见属性 57

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

2.3 HTML服务器控件 61

2.3.1 HtmlControl基类 63

2.3.2 HtmlContainerControl类 64

2.3.3 所有的HTML类 64

2.3.4 使用HtmlGenericControl类 65

2.4 通过JavaScript处理页面和服务器控件 66

2.4.1 使用Page.ClientScript.Register ClientScriptBlock 67

2.4.2 使用Page.ClientScript.RegisterStartupScript 69

2.4.3 使用Page.ClientScript.RegisterClientScriptInclude 71

2.5 客户端回调 71

2.5.1 比较典型的回送和回调 71

2.5.2 使用回调功能:一种简单的方法 73

2.5.3 使用带一个参数的回调功能 77

2.5.4 使用回调功能:一个复杂的例子 80

2.6 小结 86

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

3.1 Web服务器控件概述 87

3.2 Label服务器控件 88

3.3 Literal服务器控件 90

3.4 TextBox服务器控件 90

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属性 95

3.5.3 使用客户端JavaScript的按钮 96

3.6 LinkButton服务器控件 97

3.7 ImageButton服务器控件 98

3.8 HyperLink服务器控件 99

3.9 DropDownList服务器控件 100

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

3.11 ListBox服务器控件 104

3.11.1 允许用户选择多项 104

3.11.2 使用ListBox控件的例子 105

3.11.3 给集合添加项 107

3.12 CheckBox服务器控件 107

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

3.12.2 给复选框赋值 109

3.12.3 排列复选框的文本 109

3.13 CheckBoxList服务器控件 109

3.14 RadioButton服务器控件 112

3.15 RadioButtonList服务器控件 114

3.16 Image服务器控件 115

3.17 Table服务器控件 116

3.18 Calendar服务器控件 119

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

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

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

3.18.4 使用日期范围 121

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

3.19 AdRotator服务器控件 126

3.20 Xml服务器控件 127

3.21 Panel服务器控件 128

3.22 PlaceHolder服务器控件 130

3.23 BulletedList服务器控件 131

3.24 HiddenField服务器控件 135

3.25 FileUpload服务器控件 137

3.25.1 使用FileUpload控件上传文件 137

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

3.25.3 理解文件太小的限制 141

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

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

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

3.26 MultiView和View服务器控件 146

3.27 Wizard服务器控件 149

3.27.1 定制边栏导航 151

3.27.2 AllowReturn属性 151

3.27.3 使用StepType属性 151

3.27.4 给Wizard控件添加标题 152

3.27.5 使用向导的导航系统 153

3.27.6 使用Wizard控件的事件 153

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

3.28 ImageMap服务器控件 159

3.29 小结 161

第4章 验证服务器控件 162

4.1 有效性验证 162

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

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

4.3.1 验证原因 165

4.3.2 RequiredFieldValidator服务器控件 165

4.3.3 CompareValidator服务器控件 170

4.3.4 RangeValidator服务器控件 172

4.3.5 RegularExpressionValidator服务器控件 176

4.3.6 CustomValidator服务器控件 177

4.3.7 ValidationSummary服务器控件 182

4.4 关闭客户端验证功能 184

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

4.6 使用验证组 186

4.7 小结 190

第5章 使用Master页面 191

5.1 需要Master页面的原因 191

5.2 Master页面基础 193

5.3 编写Master页面 194

5.4 编写内容页面 197

5.4.1 混合页面类型和语言 200

5.4.2 指定要使用的Master页面 201

5.4.3 使用页面标题 202

5.4.4 使用Master页面中的控件和属性 203

5.5 在Master页面中指定默认内容 210

5.6 以编程方式将Master页面赋予内容页面 212

5.7 Master页面的嵌套 212

5.8 容器特定的Master页面 216

5.9 事件的触发顺序 217

5.10 高速缓存Master页面 217

5.11 ASP.NET AJAX和Master页面 218

5.12 小结 220

第6章 主题和Skin 221

6.1 使用ASP.NET中的主题 221

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

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

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

6.1.4 删除Web页面上的主题 224

6.1.5 使用Master页面时理解主题 224

6.1.6 StyleSheetTheme属性 225

6.2 创建自己的主题 225

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

6.2.2 创建Skin 226

6.2.3 在主题中包含CSS文件 228

6.2.4 使主题包含图像 231

6.3 定义多个Skin选项 233

6.4 编程使用主题 235

6.4.1 编程指定页面的主题 235

6.4.2 编程指定控件的SkinID 236

6.5 主题、Skin和定制控件 236

6.6 小结 240

第7章 ASP.NET 3.5中的数据绑定 241

7.1 数据源控件 241

7.1.1 SqlDataSource控件 243

7.1.2 LINQ数据源控件 253

7.1.3 AccessDataSource控件 257

7.1.4 XmlDataSource控件 258

7.1.5 ObjectDataSource控件 259

7.1.6 SiteMapDataSource控件 263

7.2 配置数据源控件的高速缓存 264

7.3 存储连接信息 264

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

7.4.1 GridView控件 267

7.4.2 编辑GridView中的数据行 281

7.4.3 删除GridView数据 287

7.4.4 DetailsView控件 289

7.4.5 使用DetailsView插入、更新和删除数据 294

7.4.6 ListView控件 296

7.4.7 FormView控件 303

7.5 其他数据绑定控件 307

7.5.1 DropDownList、ListBox、RadioButtonList和CheckBoxList 307

7.5.2 TreeView控件 307

7.5.3 Ad Rotator控件 308

7.5.4 Menu 308

7.6 内联数据绑定语法 309

7.6.1 DataBinder语法的变化 310

7.6.2 XML数据绑定 310

7.7 表达式和表达式构建器 311

7.8 小结 316

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

8.1 ADO.NET的基本功能 317

8.1.1 常见的ADO.NET任务 318

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

8.1.3 使用Connection对象 323

8.1.4 使用Command对象 325

8.1.5 使用DataReader对象 326

8.1.6 使用数据适配器 328

8.1.7 使用参数 331

8.1.8 DataSet和DataTable 333

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

8.2 DataList服务器控件 340

8.2.1 可用的模板 340

8.2.2 使用ItemTemplate 341

8.2.3 使用其他布局模板 343

8.2.4 使用多个列 346

8.3 ListView服务器控件 347

8.3.1 可用的模板 347

8.3.2 使用模板 347

8.3.3 创建布局模板 349

8.3.4 创建ItemTemplate 350

8.3.5 创建EditItemTemplate 351

8.3.6 创建EmptyItemTemplate 352

8.3.7 创建InsertItemTemplate 352

8.3.8 结果 353

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

8.4.1 建立与数据源的连接 354

8.4.2 使用DataSet设计器 356

8.4.3 使用DataSet对象CustomerOrders 360

8.5 命令的异步执行 364

8.5.1 SqlCommand类的异步方法 364

8.5.2 IAsyncResult接口 365

8.5.3 AsyncCallback 365

8.5.4 WaitHandle类 365

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

8.5.6 取消异步处理 384

8.5.7 异步连接 384

8.6 小结 384

第9章 使用LINQ查询 385

9.1 LINQ to Objects 385

9.1.1 传统的查询方法 385

9.1.2 用LINQ替代传统的查询 394

9.1.3 数据分组 401

9.1.4 其他LINQ运算符 402

9.1.5 LINQ连接 403

9.1.6 使用LINQ分页 404

9.2 LINQ to XML 405

9.3 LINQ to SQL 410

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

9.3.2 扩展LINQ 421

9.4 小结 422

第10章 使用XML和LINQ to XML 423

10.1 XML的基础 424

10.1.1 XML InfoSet 426

10.1.2 XSD/XML模式定义 426

10.1.3 在Visual Studio 2008中编辑XML和XML模式 428

10.2 XmlReader和XmlWriter 430

10.2.1 使用XDocument替代XmlReader 433

10.2.2 使用模式和XmlTextReader 434

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

10.2.4 包含NameTable优化 437

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

10.2.6 ReadSubtree和XmlSerialization 441

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

10.2.8 用XmlWriter创建XML 444

10.2.9 用LINQ for XML创建XML 446

10.2.10 2.0版本中XmlReader和XmlWriter的改进 449

10.3 XmlDocument和XPathDocument 449

10.3.1 DOM存在的问题 449

10.3.2 XPath、XPathDocument和XmlDocument 450

10.4 DataSet 454

10.4.1 将DataSet保存到XML中 454

10.4.2 XmlDataDocument 455

10.5 XmlDataSource控件 457

10.6 XSLT 461

10.6.1 XslCompiledTransform 462

10.6.2 XSLT调试 466

10.7 数据库和XML 467

10.7.1 FOR XML AUTO子句 467

10.7.2 SQL Server 2005和XML数据类型 471

10.8 小结 476

第11章 IIS7开发 478

11.1 IIS7的模块化体系结构 478

11.1.1 IIS-WebServer 479

11.1.2 IIS-WebServerManagementTools 481

11.1.3 IIS-FTPPulishingService 481

11.2 IIS7的扩展体系结构 482

11.3 IIS7和ASP.NET集成的管道 482

11.4 建立定制的Web服务器 483

11.4.1 更新包的依赖关系 484

11.4.2 在Windows Vista上安装IIS7 485

11.4.3 在Windows Server 2008上安装IIS7 485

11.4.4 命令行安装选项 486

11.4.5 Unattended安装选项 487

11.4.6 升级 487

11.5 Internet Information Services(IIS)Manager 488

11.5.1 Application Pools 489

11.5.2 Web Sites 491

11.5.3 层次结构的配置 493

11.5.4 委托 497

11.6 把应用程序从IIS6迁移到IIS7 500

11.7 小结 502

第12章 提供程序模型概述 503

12.1 提供程序概述 503

12.2 ASP.NET 3.5中的提供程序模型 505

12.2.1 设置提供程序,以使用Microsoft SQL Server 7.0、2000、2005或2008 506

12.2.2 Membership提供程序 511

12.2.3 Role提供程序 515

12.2.4 Personalization提供程序 519

12.2.5 SiteMap提供程序 520

12.2.6 SessionState提供程序 522

12.2.7 Web事件提供程序 524

12.2.8 配置提供程序 532

12.2.9 WebParts提供程序 534

12.3 提供程序的配置 535

12.4 小结 536

第13章 扩展提供程序模型 537

13.1 提供程序是较大体系结构中的一层 537

13.2 通过基于属性的编程改变提供程序的行为 538

13.2.1 通过SqlMembershipProvider建立简单的密码结构 538

13.2.2 通过SqlMembershiP Provider建立强类型的密码结构 541

13.3 ProviderBase类 542

13.4 建立自己的提供程序 544

13.4.1 创建CustomProviders应用程序 544

13.4.2 构建需要的类框架 545

13.4.3 创建XML用户数据存储 549

13.4.4 在web.config文件中定义提供程序实例 550

13.4.5 没有实现Membership Provider类的方法和属性 550

13.4.6 实现MembershipProvider类的方法和属性 551

13.4.7 使用XmlMembership Provider进行用户登录 559

13.5 扩展预定义的提供程序 560

13.5.1 用新的LimitedSqlRoleProvider提供程序限制角色功能 560

13.5.2 使用新的LimitedSqlRoleProvider提供程序 564

13.6 小结 567

第14章 站点导航 568

14.1 基于XML的站点地图 568

14.2 SiteMapPath服务器控件 570

14.2.1 PathSeparator属性 572

14.2.2 PathDirection属性 574

14.2.3 ParentLevelsDisplayed属性 574

14.2.4 ShowToolTips属性 575

14.2.5 SiteMapPath控件的子元素 575

14.3 TreeView服务器控件 576

14.3.1 标识TreeView控件的内置样式 579

14.3.2 TreeView控件的各个部分 580

14.3.3 将TreeView控件绑定到XML文件上 581

14.3.4 在TreeView中选择多个选项 583

14.3.5 在TreeView控件中指定定制的图标 586

14.3.6 指定用于连接节点的线条 587

14.3.7 编程使用TreeView控件 589

14.4 Menu服务器控件 594

14.4.1 对Menu控件应用不同的样式 595

14.4.2 Menu事件 599

14.4.3 把Menu控件绑定到XML文件上 600

14.5 SiteMap数据提供程序 602

14.5.1 ShowStartingNode属性 602

14.5.2 StartFromCurrentNode属性 603

14.5.3 StartingNodeOffset属性 604

14.5.4 StartingNodeUrl属性 604

14.6 SiteMap API 605

14.7 URL映射 607

14.8 站点地图的本地化 608

14.8.1 为本地化构建Web.sitemap文件 608

14.8.2 修改Web.config文件 609

14.8.3 创建程序集资源(.resx)文件 610

14.8.4 测试结果 611

14.9 安全补偿 612

14.9.1 启动管理员的角色管理功能 612

14.9.2 建立管理员的配置段 613

14.9.3 启用安全补偿功能 614

14.10 嵌套站点地图文件 616

14.11 小结 618

第15章 个性化 619

15.1 个性化模型 619

15.2 创建个性化属性 620

15.2.1 添加简单的个性化属性 620

15.2.2 使用个性化属性 621

15.2.3 添加一组个性化属性 625

15.2.4 使用分组的个性化属性 626

15.2.5 为个性化属性定义类型 626

15.2.6 使用定制的类型 627

15.2.7 提供默认值 629

15.2.8 把个性化属性指定为只读 630

15.3 匿名个性化 630

15.3.1 支持终端用户的匿名身份 630

15.3.2 使用匿名身份事件 633

15.3.3 个性化属性的匿名选项 634

15.3.4 有关匿名用户配置信息的警告 634

15.4 编程访问个性化功能 635

15.4.1 迁移匿名用户 635

15.4.2 profile的个性化 636

15.4.3 确定是否继续自动保存profile值 637

15.5 个性化提供程序 638

15.5.1 使用SQL ServerExpress Edition 639

15.5.2 使用Microsoft的SQL Server 7.0/2000/2005/2008 640

15.5.3 使用多个提供程序 642

15.6 管理应用程序的配置信息 642

15.6.1 ProfileManager类的属性 643

15.6.2 ProfileManager类的方法 643

15.6.3 建立ProfileManager.aspx页面 644

15.6.4 检验ProfileManager.aspx页面的代码 647

15.6.5 运行ProfileManager.aspx页面 648

15.7 小结 649

第16章 成员和角色管理 650

16.1 身份验证 650

16.2 授权 650

16.3 ASP.NET 3.5的身份验证 651

16.3.1 为成员建立Web站点 651

16.3.2 添加用户 653

16.3.3 请求证书 666

16.3.4 处理验证用户 673

16.3.5 显示在线用户数 676

16.3.6 处理密码 677

16.4 ASP.NET 3.5的授权 681

16.4.1 使用LoginView服务器控件 681

16.4.2 为角色管理建立Web站点 684

16.4.3 添加和检索应用程序角色 687

16.4.4 删除角色 689

16.4.5 给角色添加用户 690

16.4.6 获取某个角色的所有用户 690

16.4.7 获取包含某个用户的所有角色 692

16.4.8 从角色中删除用户 693

16.4.9 检查角色中的用户 693

16.4.10 角色的高速缓存方式 694

16.5 使用Web站点管理工具 695

16.6 Membership API的公共方法 696

16.7 Roles API的公共方法 696

16.8 小结 697

第17章 Portal Framework和Web Part 698

17.1 Web Part简介 698

17.2 建立动态的模块化Web站点 700

17.2.1 WebPartManager控件 700

17.2.2 使用区域进行布局 701

17.2.3 WebPartZone控件 704

17.2.4 允许用户改变页面的模式 706

17.2.5 修改区域 715

17.3 使用Portal Framework中的类 720

17.4 创建定制的Web Part 723

17.5 连接Web Part 728

17.5.1 建立提供程序Web Part 729

17.5.2 建立用户Web Part 732

17.5.3 连接ASP.NET页面上的Web Part 734

17.5.4 连接Web Part时处理Master页面的难点 736

17.6 小结 737

第18章 用ASP.NET进行HTML和CSS设计 738

18.1 警告 738

18.2 HTML和CSS概述 739

18.2.1 CSS的引入 740

18.2.2 创建样式表 740

18.2.3 CSS规则 742

18.2.4 CSS继承 750

18.2.5 元素的布局和定位 751

18.2.6 在Visual Studio中使用HTML和CSS 758

18.2.7 ASP.NET2.0 CSS——友好的控件适配器 764

18.3 小结 764

第19章 ASP.NET AJAX 765

19.1 理解对AJAX的需求 765

19.1.1 在AJAX出现之前 766

19.1.2 AJAX改变了这个过程 766

19.2 ASP.NET AJAX和VisualStudio 2008 769

19.2.1 客户端技术 769

19.2.2 服务器端技术 770

19.2.3 用ASP.NET AJAX开发 770

19.3 ASP.NET AJAX应用程序 771

19.3.1 建立没有AJAX的简单ASP.NET页面 773

19.3.2 建立包含AJAX的简单ASP.NET页面 774

19.4 ASP.NET AJAX的服务器端控件 780

19.4.1 ScriptManager控件 780

19.4.2 ScriptManagerProxy控件 782

19.4.3 Timer控件 784

19.4.4 UpdatePanel控件 785

19.4.5 UpdateProgress控件 789

19.5 使用多个UpdatePanel控件 792

19.6 使用页面历史记录 795

19.7 脚本合并 801

19.8 小结 805

第20章 ASP.NET AJAX控件工具集 806

20.1 下载和安装 807

20.1.1 新的Visual Studio模板 808

20.1.2 给Visual Studio 2008工具箱添加新控件 808

20.2 ASP.NET AJAX控件 810

20.2.1 ASP.NET AJAX控件工具集的扩展程序 812

20.2.2 ASP.NET AJAX控件工具集中的服务器控件 857

20.3 小结 868

第21章 安全性 870

21.1 身份验证和授权 870

21.2 应用身份验证措施 871

21.2.1 <authentication>节点 871

21.2.2 基于Windows的身份验证 872

21.2.3 基于窗体的身份验证 879

21.2.4 Passport身份验证 888

21.3 验证特定的文件和文件夹 888

21.4 编程授权 889

21.4.1 使用User.Identity 890

21.4.2 使用User.IsInRole() 891

21.4.3 用WindowsIdentity显示更多信息 892

21.5 身份和模拟 894

21.6 通过IIS进行保护 896

21.6.1 IP地址和域名限制 896

21.6.2 使用文件扩展名 897

21.6.3 使用ASP.NET MMC管理单元 899

21.6.4 使用IIS 7.0 Manager 900

21.7 小结 901

第22章 状态管理 902

22.1 如何选择 902

22.2 ASP.NET中的Session对象 904

22.2.1 会话和事件模型 904

22.2.2 配置会话状态的管理 906

22.2.3 进程中的会话状态 906

22.2.4 进程外的会话状态 914

22.2.5 SQL支持的会话状态 918

22.2.6 用其他提供程序扩展会话状态 921

22.2.7 无cookie的会话状态 922

22.2.8 选择维护状态的正确方式 923

22.3 Application对象 923

22.4 查询字符串 924

22.5 cookie 924

22.6 回送和跨页面的回送 925

22.7 隐藏的字段、ViewState和ControlState 927

22.8 为短时间状态存储应用HttpContext.Current.Items 931

22.9 小结 932

第23章 高速缓存 934

23.1 高速缓存 934

23.1.1 输出高速缓存 934

23.1.2 部分页面(UserControl)的高速缓存 937

23.1.3 Post-Cache Substitution 938

23.1.4 HttpCachePolicy和客户端高速缓存 940

23.2 编程高速缓存 942

23.2.1 使用Cache对象高速缓存数据 942

23.2.2 控制ASP.NET高速缓存 943

23.2.3 高速缓存依赖性 943

23.3 使用SQL Server高速缓存依赖性 949

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

23.3.2 使表支持SQL Server高速缓存禁用功能 950

23.3.3 对SQL Server 2000的影响 950

23.3.4 查看支持SQL高速缓存禁用功能的表 951

23.3.5 使表不支持SQL Server高速缓存禁用功能 952

23.3.6 使数据库不支持SQLServer高速缓存禁用功能 952

23.3.7 SQL Server 2005高速缓存禁用功能 953

23.4 配置ASP.NET应用程序 954

23.5 测试SQL Server高速缓存禁用功能 955

23.5.1 给页面添加多个表 957

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

23.5.3 给SQLServer高速缓存依赖性和Cache对象建立关联 958

23.6 小结 961

第24章 调试和错误处理技术 962

24.1 设计期间的支持 962

24.1.1 语法通知 962

24.1.2 Immediate和Command窗口 964

24.1.3 任务列表 964

24.2 跟踪 965

24.2.1 System.Diagnostics.Trace和ASP.NET的Page Trace 966

24.2.2 页面级的跟踪 966

24.2.3 应用程序的跟踪 966

24.2.4 查看跟踪数据 966

24.2.5 在组件中跟踪 969

24.2.6 跟踪的传送 971

24.2.7 TraceListener 971

24.2.8 诊断选项 975

24.2.9 Web事件 976

24.3 调试 978

24.3.1 需要的内容 978

24.3.2 IIS和ASP.NET开发服务器 979

24.3.3 启动调试会话 980

24.3.4 有助于调试的新工具 983

24.3.5 客户端的Javascript调试 986

24.3.6 SQL存储过程的调试 988

24.4 异常和错误处理 988

24.4.1 处理页面上的异常 989

24.4.2 处理应用程序异常 989

24.4.3 HTTP状态码 990

24.5 小结 991

第25章 文件I/O和流 992

25.1 使用驱动器、目录和文件 992

25.1.1 DriveInfo类 993

25.1.2 Directory和DirectoryInfo类 996

25.1.3 File和FileInfo类 1002

25.1.4 使用路径 1006

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

25.2 读写文件 1017

25.2.1 Stream类 1017

25.2.2 Reader和Writer类 1021

25.2.3 压缩流 1025

25.3 处理串行端口 1030

25.4 网络通信 1031

25.4.1 WebRequest和WebResponse 1032

25.4.2 发送邮件 1038

25.5 小结 1038

第26章 用户控件和服务器控件 1040

26.1 用户控件 1040

26.1.1 创建用户控件 1040

26.1.2 与用户控件交互 1043

26.1.3 动态加载用户控件 1045

26.2 服务器控件 1050

26.2.1 WebControl项目的建立 1050

26.2.2 控件的属性 1055

26.2.3 控件的显示 1056

26.2.4 添加标记属性 1059

26.2.5 给HTML设置样式 1061

26.2.6 主题和skin 1063

26.2.7 添加客户端特性 1065

26.2.8 检测和响应浏览器功能 1073

26.2.9 使用ViewState 1076

26.2.10 引发PostBack事件 1080

26.2.11 处理回送数据 1083

26.2.12 复合控件 1085

26.2.13 模板化控件 1088

26.2.14 在设计期间创建控件 1095

26.3 小结 1114

第27章 模块和处理程序 1115

27.1 处理HTTP请求 1115

27.1.1 IIS 5/6和ASP.NET 1115

27.1.2 IIS 7和ASP.NET 1116

27.1.3 ASP.NET请求处理 1117

27.2 HttpModule 1117

27.2.1 修改HTTP输出 1119

27.2.2 URL的重写 1122

27.2.3 IIS通配符 1126

27.3 HttpHandler 1127

27.3.1 一般的处理程序 1127

27.3.2 在IIS中映射文件扩展名 1131

27.4 小结 1133

第28章 使用业务对象 1134

28.1 使用ASP.NET 3.5中的业务对象 1134

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

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

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

28.2.1 运行库可调用包装(RCW) 1138

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

28.2.3 错误处理 1144

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

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

28.3.1 COM可调用包装(CCW) 1148

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

28.3.3 早期绑定和后期绑定 1153

28.3.4 错误处理 1154

28.3.5 用COM应用程序部署.NET组件 1156

28.4 小结 1157

第29章 ADO.NET Entity Framework 1158

29.1 能否使用同一种语言 1158

29.1.1 概念层和逻辑层 1160

29.1.2 层之间的映射 1160

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

29.2.1 使用EDM向导 1161

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

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

29.3 理解关系 1167

29.3.1 一对一和一对多关系 1167

29.3.2 多对一和多对多关系 1170

29.4 EDM中的继承 1173

29.5 使用存储过程 1177

29.6 EntityDataSource控件 1180

29.6.1 创建基本页面 1180

29.6.2 配置数据源控件 1181

29.7 小结 1185

第30章 ASP.NET Dynamic Data 1186

30.1 使用Visual Studio 2008创建基本应用程序 1186

30.1.1 默认应用程序中创建的核心文件 1187

30.1.2 Dynamic Data应用程序 1188

30.1.3 连接数据库 1193

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

30.1.5 样式和布局 1198

30.1.6 应用程序的结果 1198

30.2 使用动态数据路由 1201

30.3 控制显示方式 1205

30.4 小结 1207

第31章 建立和使用服务 1208

31.1 不同系统之间的通信 1208

31.2 建立一个简单的XMLWeb服务 1210

31.2.1 WebService页面指令 1211

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

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

31.2.4 XMLWeb服务接口 1215

31.3 使用简单的XML Web服务 1217

31.3.1 添加Web引用 1218

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

31.4 Web服务的传输协议 1221

31.4.1 HTTP-GET 1223

31.4.2 HTTP-POST 1225

31.4.3 SOAP 1226

31.5 Web方法的重载 1226

31.6 高速缓存Web服务的响应 1229

31.7 SOAP标题 1230

31.7.1 用SOAP标题建立Web服务 1230

31.7.2 通过SOAP标题使用Web服务 1232

31.7.3 使用SOAP 1.2请求Web服务 1234

31.8 异步使用Web服务 1236

31.9 Windows CommunicationFoundation 1238

31.9.1 迈向SOA的一大步 1239

31.9.2 WCF概述 1240

31.9.3 建立WCF服务 1240

31.10 建立WCF使用程序 1247

31.10.1 添加服务引用 1247

31.10.2 使用数据合同 1250

31.10.3 名称空间 1255

31.11 小结 1255

第32章 ADO.NET DataServices 1256

32.1 创建第一个服务 1257

32.1.1 添加EntityDataModel 1257

32.1.2 创建服务 1259

32.2 查询接口 1263

32.2.1 读取数据表 1264

32.2.2 从表中读取特定的项 1265

32.2.3 关系 1268

32.2.4 展开关系 1270

32.2.5 结果集中的排序 1273

32.2.6 在结果集中移动 1274

32.2.7 过滤内容 1275

32.3 在ASP.NET中使用ADO.NET Data Services 1276

32.4 小结 1280

第33章 本地化 1281

33.1 文化和地区 1281

33.1.1 理解文化类型 1282

33.1.2 ASP.NET线程 1282

33.1.3 服务器端的文化声明 1285

33.1.4 客户端的文化声明 1286

33.1.5 翻译值和行为 1287

33.2 ASP.NET 3.5资源文件 1294

33.2.1 使用本地资源 1295

33.2.2 使用全局资源 1300

33.3 资源编辑器 1302

33.4 小结 1303

第34章 配置 1304

34.1 配置概述 1304

34.1.1 服务器配置文件 1305

34.1.2 应用程序配置文件 1308

34.1.3 配置设置的应用 1308

34.1.4 检测配置文件的变化 1309

34.1.5 配置文件的格式 1309

34.2 公共配置设置 1310

34.2.1 连接字符串 1310

34.2.2 配置会话状态 1311

34.2.3 编译配置 1315

34.2.4 浏览器的功能 1317

34.2.5 定制错误 1319

34.2.6 身份验证 1320

34.2.7 匿名身份 1322

34.2.8 授权 1323

34.2.9 锁定配置设置 1325

34.2.10 ASP.NET页面配置 1326

34.2.11 include文件 1327

34.2.12 配置ASP.NET运行时设置 1328

34.2.13 配置ASP.NET辅助进程 1330

34.2.14 存储与应用程序相关的设置 1332

34.2.15 配置文件的编程 1333

34.2.16 保护配置设置 1339

34.2.17 编辑配置文件 1343

34.3 创建定制段 1344

34.3.1 使用NameValueFileSectionHandler对象 1345

34.3.2 使用DictionarySectionHandler对象 1347

34.3.3 使用SingleTagSectionHandler对象 1348

34.3.4 使用定制的配置处理程序 1349

34.4 小结 1351

第35章 测试 1352

35.1 使用事件日志 1352

35.1.1 读取事件日志 1353

35.1.2 写入事件日志 1355

35.2 使用性能计数器 1357

35.2.1 通过管理工具查看性能计数器 1357

35.2.2 建立基于浏览器的管理工具 1359

35.3 应用程序的跟踪 1365

35.4 健康监控 1365

35.4.1 健康监控系统的提供程序模型 1366

35.4.2 健康监控的配置 1367

35.4.3 通过配置写入事件:运行示例 1374

35.4.4 把事件路由到SQL Server中 1375

35.4.5 缓存Web事件 1377

35.4.6 通过电子邮件发送Web事件 1379

35.5 小结 1384

第36章 管理 1385

36.1 ASP.NET Web站点管理工具 1385

36.1.1 Home选项卡 1386

36.1.2 Security选项卡 1386

36.1.3 Application选项卡 1396

36.1.4 Provider选项卡 1399

36.2 在Vista的IIS上配置ASP.NET 1400

36.2.1 .NET Compilation 1401

36.2.2 .NET Globalization 1402

36.2.3 .NET Profile 1402

36.2.4 .NET Roles 1402

36.2.5 .NET Trust Levels 1403

36.2.6 .NET Users 1403

36.2.7 Application Settings 1405

36.2.8 Connection Strings 1405

36.2.9 Pages and Controls 1406

36.2.10 Providers 1406

36.2.11 Session State 1407

36.2.12 SMTP E-mail 1408

36.3 小结 1408

第37章 打包和部署ASP.NET应用程序 1409

37.1 部署各个部分 1409

37.2 部署之前的准备 1410

37.3 部署Web应用程序的方法 1411

37.3.1 使用XCOPY 1411

37.3.2 使用VS Copy Web Site选项 1413

37.3.3 部署预编译的Web应用程序 1415

37.3.4 建立安装程序 1417

37.4 安装程序的选项 1424

37.4.1 使用部署项目的属性 1424

37.4.2 File System编辑器 1427

37.4.3 Registry编辑器 1430

37.4.4 File Types编辑器 1431

37.4.5 User Interface编辑器 1431

37.4.6 Custom Actions编辑器 1433

37.4.7 Launch Conditions编辑器 1434

37.5 小结 1434

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

附录B ASP.NET终极工具 1448

附录C Silverlight2和ASP.NET 1468

附录D ASP.NET大于ASP.NET MVC 1487

附录E ASP.NET在线资源 1506