第Ⅰ部分 集成开发环境
第1章 快速入门 3
1.1 入门 3
1.1.1 安装Visual Studio 2010 3
1.1.2 运行Visual Studio 2010 5
1.2 Visual Studio IDE 6
1.3 小结 12
第2章 Solution Explorer、Toolbox
和Properties窗口 13
2.1 Solution Explorer窗口 13
2.2 Toolbox窗口 20
2.2.1 排列组件 22
2.2.2 添加组件 23
2.3 Properties窗口 23
2.4 小结 29
第3章 选项和定制 31
3.1 起始页面 31
3.1.1 定制起始页面 32
3.1.2 带用户控件的代码隐藏 34
3.2 窗口布局 36
3.2.1 查看窗口和工具栏 36
3.2.2 浏览打开的项 37
3.2.3 停靠 38
3.3 编辑区域 40
3.3.1 字体和颜色 40
3.3.2 可视化指南 41
3.3.3 全屏模式 42
3.3.4 跟踪变化 42
3.4 其他选项 43
3.4.1 快捷键 43
3.4.2 项目和解决方案 45
3.4.3 Build and Run界面 46
3.4.4 VB选项 47
3.5 导入和导出设置 47
3.6 小结 48
第4章 Visual Studio工作区 49
4.1 代码编辑器 49
4.1.1 代码编辑器窗口的布局 49
4.1.2 区域 50
4.1.3 大纲 51
4.1.4 代码的格式化 51
4.1.5 向前/向后 53
4.1.6 高级代码编辑器功能 53
4.1.7 分割视图 54
4.1.8 代码窗口的分离(浮动) 54
4.1.9 创建选项卡组 55
4.1.10 高级功能 56
4.2 命令窗口 58
4.3 Immediate窗口 59
4.4 Class View工具窗口 60
4.5 Error List窗口 61
4.6 Object Browser窗口 61
4.7 Code Definition 窗口 62
4.8 Call Hierarchy窗口 63
4.9 Document Outline工具窗口 64
4.9.1 HTML大纲 64
4.9.2 控制大纲 65
4.10 重新安排工具窗口 67
4.11 小结 68
第5章 查找和替换以及帮助 69
5.1 Quick Find与Quick Replace 69
5.1.1 Quick Find 70
5.1.2 Quick Replace 70
5.1.3 查找选项 71
5.1.4 通配符 72
5.1.5 正则表达式 72
5.1.6 Find and Replace选项 74
5.2 文件中查找/替换 74
5.2.1 在文件中查找 74
5.2.2 查找对话框选项 76
5.2.3 结果窗口 76
5.2.4 文件中替换 77
5.3 符号查找 77
5.4 Navigate To功能 78
5.5 增量搜索 79
5.6 访问帮助 80
5.6.1 浏览和搜索帮助系统 81
5.6.2 配置帮助系统 81
5.7 小结 82
第Ⅱ部分 入门
第6章 解决方案、项目和项 85
6.1 解决方案的结构 85
6.2 解决方案文件的格式 86
6.3 解决方案的属性 88
6.3.1 常规属性 88
6.3.2 配置属性 88
6.4 项目类型 90
6.5 项目文件格式 91
6.6 项目属性 92
6.6.1 Application选项卡 92
6.6.2 Compile选项卡(仅用于
Visual Basic) 95
6.6.3 Build 选项卡(仅用于
C#和F#) 97
6.6.4 Build Events选项卡(仅用于
C#和F#) 98
6.6.5 Debug选项卡 98
6.6.6 References选项卡(仅用于
Visual Basic) 99
6.6.7 Resources选项卡 101
6.6.8 Services选项卡 101
6.6.9 Settings选项卡 102
6.6.10 Reference Paths选项卡(仅
用于C#和F#) 103
6.6.11 Signing选项卡 103
6.6.12 My Extensions选项卡(仅
用于Visual Basic) 104
6.6.13 Security选项卡 104
6.6.14 Publish选项卡 105
6.6.15 Code Analysis选项卡(仅用
于VSTS Premium和
Ultimate版) 106
6.7 Web应用程序项目属性 106
6.7.1 Web 选项卡 107
6.7.2 Silverlight Applications
选项卡 107
6.7.3 Package/Publish Web选项卡 108
6.7.4 Package/Publish SQL选项卡 109
6.8 Web Site项目 109
6.9 小结 110
第7章 IntelliSense和书签 111
7.1 IntelliSense的解释 111
7.1.1 通用的IntelliSense 112
7.1.2 单词和短语的自动完成 113
7.1.3 参数信息 118
7.1.4 快速信息 119
7.2 JavaScript Intellisense 119
7.2.1 JavaScript IntelliSense上下文 120
7.2.2 引用另一个JavaScript文件 120
7.3 IntelliSense选项 121
7.2.1 通用选项 121
7.2.2 C#的特定选项 123
7.4 扩展IntelliSense 123
7.3.1 代码片段 124
7.3.2 XML注释 124
7.3.3 添加自己的IntelliSense 124
7.5 书签和Bookmarks窗口 124
7.6 小结 126
第8章 代码片段和重构 127
8.1 代码片段概述 128
8.1.1 在Toolbox中存储代码块 128
8.1.2 代码片段 128
8.1.3 C#中的代码片段 129
8.1.4 Visual Basic中的代码片段 130
8.1.5 用代码段进行封装 131
8.1.6 Code Snippets Manager 131
8.1.7 创建代码片段 132
8.1.8 查看已有的代码片段 133
8.2 访问重构支持 136
8.3 重构操作 137
8.3.1 Extract Method重构操作 137
8.3.2 Encapsulate Field重构操作 139
8.3.3 Extract Interface重构操作 141
8.3.4 Reorder Parameters重构操作 143
8.3.5 Remove Parameters
重构操作 144
8.3.6 Rename重构操作 144
8.3.7 Promote Variable to Parameter
重构操作 145
8.3.8 Generate Method Stub
重构操作 146
8.3.9 Organize Usings重构操作 147
8.4 小结 148
第9章 服务管理 149
9.1 Servers连接 149
9.1.1 Event Logs节点 150
9.1.2 Management Classes节点 152
9.1.3 Management Events节点 154
9.1.4 Message Queues节点 157
9.1.5 Performance Counters节点 160
9.1.6 Services节点 162
9.2 Data Connections节点 163
9.3 SharePoint Connections节点 164
9.4 小结 164
第10章 用Class Designer建模 165
10.1 创建类图 165
10.2 设计界面 166
10.3 工具箱 167
10.3.1 实体 167
10.3.2 连接器 168
10.4 类的细节 168
10.5 Properties窗口 169
10.6 布局 170
10.7 导出类图 170
10.8 代码的生成和重构 170
10.8.1 拖放式代码生成 170
10.8.2 IntelliSense代码生成 173
10.8.3 用类设计器进行重构 173
10.9 Modeling PowerToys for
Visual Studio 174
10.9.1 可视化方面的改进 174
10.9.2 功能方面的改进 175
10.10 小结 176
第Ⅲ部分 深 入
第11章 单元测试 179
11.1 第一个测试用例 179
11.1.1 使用特性标识测试 186
11.1.2 其他测试特性 187
11.2 指定判断条件 189
11.2.1 Assert类 189
11.2.2 StringAssert类 190
11.2.3 CollectionAssert类 190
11.2.4 ExpectedException特性 190
11.3 初始化和清理 192
11.3.1 TestInitialize 和TestCleanup
特性 192
11.3.2 ClassInitialize和
ClassCleanup特性 192
11.3.3 AssemblyInitialize 和
AssemblyCleanup特性 193
11.4 测试环境 193
11.4.1 数据 193
11.4.2 编写测试输出 195
11.5 高级单元测试 196
11.5.1 定制特性 196
11.5.2 测试私有成员 198
11.6 测试Code Contracts 199
11.7 管理大量的测试用例 201
11.8 小结 202
第12章 XML文档使用注释 203
12.1 内联注释 203
12.2 XML注释 204
12.2.1 添加XML注释 204
12.2.2 XML注释标记 205
12.3 使用XML注释 218
12.4 用Ghostdoc生成文档 219
12.5 用Sandcastle编译文档 220
12.6 Task List注释 223
12.7 小结 225
第13章 编码一致性工具 227
13.1 源控制 227
13.1.1 选择源控制存储库 228
13.1.2 访问源控制 230
13.1.3 源控制的脱机支持 234
13.2 编码标准 235
13.2.1 用FxCop分析代码 235
13.2.2 用StyleCop指定样式 238
13.2.3 Code Contracts 238
13.4 小结 240
第14章 用T4生成代码 241
14.1 创建T4模板 241
14.2 T4构建块 245
14.2.1 Expression块 245
14.2.2 Statement块 246
14.2.3 Class Feature块 248
14.3 T4的工作原理 249
14.4 T4指令 252
14.4.1 template指令 252
14.4.2 output指令 252
14.4.3 assembly指令 252
14.4.4 import指令 253
14.4.5 include指令 254
14.5 疑难解答 255
14.5.1 设计时错误 255
14.5.2 编译转换错误 255
14.5.3 执行转换错误 256
14.5.4 生成的代码错误 256
14.6 生成代码资源 256
14.7 Preprocessed Text Template 260
14.7.1 使用Preprocessed Text
Template 261
14.7.2 与标准T4模板的区别 264
14.8 提示和技巧 265
14.9 小结 265
第15章 项目和项模板 267
15.1 创建模板 267
15.1.1 项模板 267
15.1.2 项目模板 270
15.1.3 模板结构 271
15.1.4 模板参数 272
15.1.5 模板位置 273
15.2 扩展模板 273
15.2.1 模板项目的安装 274
15.2.2 IWizard 275
15.2.3 生成扩展项目模板 279
15.3 Starter Kits 281
15.4 联机模板 281
15.5 小结 282
第16章 语言相关特性 283
16.1 使用正确语言 283
16.1.1 命令式语言 284
16.1.2 声明式语言 284
16.1.3 动态式语言 284
16.1.4 函数式语言 285
16.1.5 这些类别的含义 285
16.2 两种语言的选择 286
16.2.1 无PIA的编译 286
16.2.2 泛型变体 287
16.3 Visual Basic 291
16.3.1 ?表达式和匿名方法 291
16.3.2 隐式的续行符 292
16.3.3 带初始值的自动属性 293
16.3.4 集合初始化器和数组
字面量 293
16.3.5 可空的可选参数 294
16.3.6 Visual Basic PowerPack 295
16.4 C# 295
16.4.1 带动态查找功能的
后期绑定 295
16.4.2 命名参数和可选参数 296
16.5 F# 297
16.5.1 第一个F#程序 297
16.5.2 研究F#语言特性 300
16.6 小结 301
第Ⅳ部分 富客户端应用程序
第17章 Windows Forms应用程序 305
17.1 入门 305
17.2 Windows窗体 306
17.2.1 Appearance属性 307
17.2.2 Layout属性 307
17.2.3 Window Style属性 307
17.3 窗体设计首选项 307
17.4 添加和定位控件 309
17.4.1 垂直对齐文本控件 310
17.4.2 自动定位多个控件 310
17.4.3 控件的Tab键顺序和分层 311
17.4.4 锁定控件设计 312
17.4.5 设置控件属性 312
17.4.6 基于服务的组件 313
17.4.7 智能标签任务 314
17.5 容器控件 314
17.5.1 Panel和 SplitContainer
控件 314
17.5.2 FlowLayoutPanel控件 315
17.5.3 TableLayoutPanel控件 316
17.6 停靠和锚定控件 316
17.7 小结 317
第18章 Windows Presentation
Foundation (WPF) 319
18.1 WPF的概念 319
18.2 开始使用WPF 321
18.2.1 XAML基础 322
18.2.2 WPF控件 323
18.2.3 WPF布局控件 324
18.3 WPF设计器和XAML
编辑器 326
18.3.1 使用XAML编辑器 328
18.3.2 使用WPF设计器 328
18.3.3 Properties工具窗口 330
18.3.4 数据绑定功能 333
18.4 设置应用程序的样式 337
18.5 Windows Forms的交互
操作性 338
18.5.1 在Windows Forms中
承载WPF控件 338
18.5.2 在WPF中承载
Windows Forms控件 340
18.6 用WPF Visualizer调试 342
18.7 小结 343
第19章 Office业务应用程序 345
19.1 选择Office项目类型 345
19.1.1 文档级定制 346
19.1.2 应用程序级插件 347
19.2 创建文档级定制 347
19.2.1 第一个VSTO项目 347
19.2.2 保护文档设计 350
19.2.3 添加操作窗格 351
19.3 创建应用程序级插件 352
19.3.1 一些Outlook概念 352
19.3.2 创建Outlook窗体区域 353
19.4 调试Office应用程序 356
19.4.1 注销插件 357
19.4.2 禁用的插件 358
19.5 部署Office应用程序 359
19.6 小结 360
第Ⅴ部分 Web应用程序
第20章 ASP.NET Web窗体 363
20.1 Web Application项目和
Web Site项目 363
20.2 创建Web项目 364
20.2.1 创建Web Site项目 364
20.2.2 创建Web Application项目 367
20.2.3 其他Web项目 369
20.2.4 入门套件、社区项目和
开放源代码的应用程序 369
20.3 设计Web窗体 370
20.3.1 HTML设计器 370
20.3.2 定位控件和HTML元素 372
20.3.3 格式化控件和HTML元素 374
20.3.4 CSS工具 374
20.3.5 验证工具 378
20.4 Web控件 379
20.4.1 导航组件 379
20.4.2 用户验证 380
20.4.3 数据组件 381
20.4.4 Web Parts 384
20.5 主/从页面 385
20.6 富客户端开发 386
20.6.1 用JavaScript开发 386
20.6.2 使用ASP.NET AJAX 387
20.6.3 使用AJAX Control
Extenders 390
20.7 ASP.NET Web站点管理 391
20.7.1 安全 392
20.7.2 应用程序设置 394
20.7.3 IIS中的ASP.NET配置 394
20.8 小结 395
第21章 ASP NET MVC 397
21.1 Model-View-Controller 398
21.2 开始使用ASP.NET MVC 398
21.3 选择Model 400
21.4 Controller和Action方法 400
21.5 用View显示UI 403
21.6 高级MVC 410
21.6.1 路由 410
21.6.2 Action方法参数 414
21.6.3 区域 417
21.6.4 验证 420
21.6.5 部分视图 421
21.6.6 定制View模板 422
21.6.7 Dynamic Data模板 422
21.6.8 jQuery 426
21.7 小结 428
第22章 Silverlight 429
22.1 Silverlight简介 429
22.2 开始使用Silverlight 430
22.3 Navigation Framework 435
22.4 设置主题 436
22.5 在浏览器外部运行 438
22.6 小结 440
第23章 Dynamic Data 441
23.1 创建动态数据Web
应用程序 442
23.1.1 添加数据模型 443
23.1.2 研究Dynamic Data
应用程序 444
23.2 定制数据模型 446
23.2.1 基架各个表 446
23.2.2 定制各个数据字段 446
23.2.3 添加定制的验证规则 448
23.2.4 定制显示格式 450
23.3 定制显示 452
23.3.1 页面模板 452
23.3.2 字段模板 455
23.3.3 实体模板 459
23.3.4 过滤器模板 461
23.4 为已有的项目启用动态数据 462
23.5 小结 463
第24章 SharePoint 465
24.1 准备开发环境 466
24.1.1 安装预备软件 466
24.1.2 安装SharePoint 2010 468
24.2 研究SharePoint 2010 469
24.3 创建SharePoint项目 471
24.4 构建定制的SharePoint组件 474
24.4.1 开发Web部件 474
24.4.2 创建内容类型和列表 475
24.4.3 添加事件接收器 477
24.4.4 创建SharePoint工作流 478
24.5 使用Feature 479
24.6 打包和部署 480
24.7 小结 482
第25章 Windows Azure 483
25.1 Windows Azure平台 483
25.1.1 Development Fabric 485
25.1.2 表、博客和查询存储器 486
25.1.3 应用程序部署 489
25.1.4 调整应用程序 492
25.2 SQL Azure 492
25.3 AppFabric 494
25.3.1 Service Bus 494
25.3.3 访问控制服务 494
25.4 小结 494
第Ⅵ部分 数 据
第26章 可视化数据库工具 497
26.1 Visual Studio 2010中的
数据库窗口 497
26.1.1 Server Explorer窗口 498
26.1.2 Data Sources窗口 503
26.2 编辑数据 504
26.3 预览数据 504
26.4 小结 505
第27章 数据集和数据绑定 507
27.1 DataSet概述 507
27.1.1 添加数据源 508
27.1.2 DataSet设计器 510
27.2 绑定数据 513
27.2.1 BindingSource类 514
27.2.2 BindingNavigator类 516
27.2.3 选择数据源 517
27.2.4 保存更改 520
27.2.5 插入新记录 521
27.2.6 验证 522
27.2.7 定制的DataSet 524
27.2.8 BindingSource链和
DataGridView控件 526
27.3 数据源的使用 527
27.3.1 Web服务数据源 529
27.3.2 浏览数据 529
27.4 小结 531
第28章 LINQ 533
28.1 LINQ提供程序 533
28.2 旧式查询 534
28.3 查询的各个部分 536
28.3.1 From语句 536
28.3.2 Select语句 537
28.3.3 Where语句 538
28.3.4 Group By语句 538
28.3.5 定制投射 539
28.3.6 Order By语句 540
28.4 调试和执行 541
28.5 LINQ to XML对象模型 542
28.5.1 VB的XML字面量 543
28.5.2 把XML分析为XElement 543
28.5.2 用LINQ创建XML 545
28.6 查询XML 547
28.7 架构支持 548
28.8 LINQ to SQL 549
28.8.1 创建对象模型 549
28.8.2 用LINQ to SQL查询 551
28.8.3 绑定LINQ to SQL对象 556
28.9 LINQ Pad 560
28.10 小结 560
第29章 ADO.NET Entity
Framework 561
29.1 Entity Framework 562
29.1.1 与LINQ to SQL比较 562
29.1.2 Entity Framework概念 562
29.2 入门 563
29.3 创建实体模型 563
29.3.1 实体数据模型向导 563
29.3.2 Entity Framework设计器 566
29.3.3 创建/修改实体 569
29.3.4 创建/修改实体关联 572
29.3.5 实体继承 573
29.3.6 验证实体模型 573
29.3.7 用数据库修改更新实体
模型 573
29.4 查询实体模型 573
29.4.1 LINQ to Entities概述 574
29.4.2 获得对象上下文 574
29.4.3 CRUD操作 574
29.4.4 浏览实体关联 578
29.5 高级功能 580
29.5.1 在实体模型中更新数据库 580
29.5.2 给实体添加业务逻辑 580
29.5.3 旧的CLR对象(POCO) 580
29.6 小结 581
第30章 报表 583
30.1 开始使用报表 583
30.2 设计报表 585
30.2.1 定义数据源 586
30.2.2 报表控件 587
30.2.3 表达式、占位符和聚合 597
30.2.4 定制代码 600
30.2.5 报表布局 603
30.2.6 子报表 605
30.2.7 Report向导 607
30.3 显示报表 608
30.3.1 Report Viewer控件 608
30.3.2 生成报表 609
30.3.3 把报表显示为不同格式 610
30.4 部署报表 611
30.5 小结 611
第Ⅶ部分 应用程序服务
第31章 Windows Communication
Foundation(WCF) 615
31.1 WCF的概念 615
31.2 入门 616
31.3 定义协定 617
31.3.1 创建服务协定 617
31.3.2 创建数据协定 619
31.4 配置WCF服务端点 620
31.5 承载WCF服务 623
31.6 用WCF服务 628
31.7 小结 631
第32章 Windows Workflow
Foundation(WF) 633
32.1 Windows Workflow Foundation
的概念 633
32.2 使用Windows Workflow
的原因 634
32.3 工作流的概念 634
32.3.1 活动 634
32.3.2 控制流活动 636
32.3.3 表达式 636
32.3.4 工作流运行库/调度器 636
32.3.5 书签 636
32.3.6 持久化 637
32.3.7 跟踪 637
32.4 入门 637
32.5 Workflow Foundation设计器 639
32.6 创建工作流 642
32.6.1 设计工作流 642
32.6.2 编写Code Activities 644
32.6.3 执行工作流 646
32.6.4 调试工作流 648
32.6.5 测试工作流 648
32.7 承载工作流设计器 649
32.8 小结 653
第33章 客户端应用程序服务 655
33.1 客户端服务 655
33.2 角色授权 658
33.3 用户验证 660
33.4 设置 662
33.5 登录窗体 666
33.6 脱机支持 669
33.7 小结 671
第34章 同步服务 673
34.1 偶尔连接的应用程序 673
34.2 Server Direct 674
34.3 开始使用同步服务 677
34.4 N层上的同步服务 679
34.5 后台同步 680
34.6 客户端更改 682
34.7 小结 683
第35章 WCF RIA Services 685
35.1 入门 685
35.2 域服务 687
35.3 域操作 688
35.3.1 查询操作 689
35.3.2 插入/更新/删除操作 689
35.3.3 其他操作类型 690
35.4 在Silverlight中使用域服务 690
35.5 小结 694
第Ⅷ部分 配置和资源
第36章 配置文件 697
36.1 配置文件 697
36.1.1 machine.config文件 697
36.1.2 web.config文件 698
36.1.3 app.config文件 698
36.1.4 security.config文件 698
36.1.5 applicationHost.config文件 698
36.2 配置架构 699
36.2.1 configurationSections节 699
36.2.2 startup节 700
36.2.3 runtime节 700
36.2.4 system.runtime.remoting节 701
36.2.5 system.net节 701
36.2.6 cryptographySettings节 702
36.2.7 system.diagnostics节 702
36.2.8 system.web节 702
36.2.9 compiler节 703
36.2.10 配置特性 703
36.3 应用程序设置 705
36.3.1 使用appSettings节 705
36.3.2 项目设置 705
36.3.3 动态属性 706
36.3.4 自定义配置节 707
36.4 用户设置 712
36.5 用设置引用的项目 713
36.6 小结 714
第37章 连接字符串 715
37.1 连接字符串向导 715
37.2 SQL Server格式 719
37.3 构造代码 720
37.4 加密连接字符串 722
37.5 小结 723
第38章 资源文件 725
38.1 资源的概念 725
38.1.1 文本文件资源 725
38.1.2 resx资源文件 727
38.1.3 二进制资源文件 727
38.1.4 添加资源 727
38.1.5 嵌入文件作为资源 728
38.1.6 资源命名 728
38.1.7 访问资源 729
38.1.8 设计器文件 730
38.2 为应用程序提供资源 730
38.3 辅助资源 732
38.3.1 区域 732
38.3.2 创建区域性资源 733
38.3.3 加载区域资源文件 733
38.3.4 辅助区域资源 734
38.4 访问细节 734
38.4.1 加载位图和图标 734
38.4.2 跨程序集引用 735
38.4.3 ComponentResourceManager
对象 735
38.5 编码资源文件 736
38.5.1 ResourceReader和
ResourceWriter 736
38.5.2 ResxResourceReader和
ResxResourceWriter 736
38.6 定制资源 737
38.7 小结 740
第Ⅸ部分 调 试
第39章 使用调试窗口 745
39.1 代码窗口 745
39.1.1 断点 745
39.1.2 数据提示 746
39.2 Breakpoints窗口 746
39.3 Output窗口 747
39.4 Immediate窗口 747
39.5 监视窗口 749
39.5.1 QuickWatch窗口 749
39.5.2 Watch 1-4窗口 749
39.5.3 Autos窗口和Locals窗口 750
39.6 代码执行窗口 750
39.6.1 Call Stack窗口 750
39.6.2 Threads窗口 751
39.6.3 Modules窗口 751
39.6.4 Processes窗口 752
39.7 内存窗口 752
39.7.1 Memory 1-4窗口 752
39.7.2 Disassembly窗口 752
39.7.3 Registers窗口 753
39.8 IntelliTrace (仅用于
Ultimate版本) 753
39.9 并行调试窗口 754
39.9.1 Parallel Stacks窗口 755
39.9.2 Parallel Tasks窗口 756
39.10 Exceptions窗口 756
39.10.1 定制 Exception Assistant 758
39.10.2 展开异常 759
39.11 小结 759
第40章 断点调试 761
40.1 断点 761
40.1.1 设置断点 761
40.1.2 为断点指定条件 763
40.1.3 过滤 765
40.1.4 断点操作 766
40.2 跟踪点 767
40.2.1 创建跟踪点 767
40.2.2 跟踪点操作 768
40.3 执行点 769
40.3.1 代码的执行 769
40.3.2 移动执行点 770
40.4 Edit and Continue功能 770
40.4.1 原始编辑 771
40.4.2 停止应用修改 771
40.5 小结 771
第41章 数据提示、调试代理和
可视化工具 773
41.1 数据提示 773
41.2 调试器特性 774
41.2.1 DebuggerBrowsable特性 775
41.2.2 DebuggerDisplay特性 775
41.2.3 DebuggerHidden特性 776
41.2.4 DebuggerStepThrough特性 777
41.2.5 DebuggerNonUserCode
特性 778
43.2.6 DebuggerStepperBoundary
特性 778
41.3 类型代理 778
41.4 可视化工具 780
41.5 高级技术 783
41.6 小结 784
第42章 调试Web应用程序 785
42.1 调试服务器端的ASP.NET
代码 785
42.1.1 Web应用程序异常 787
42.1.2 Edit and Continue功能 789
42.1.3 错误处理 789
42.2 调试客户端的JavaScript 790
42.2.1 在JavaScript代码中设置
断点 791
42.2.2 调试动态生成的JavaScript
代码 791
42.2.3 调试ASP.NET AJAX
JavaScript 792
42.3 调试Silverlight 792
42.4 跟踪 793
42.4.1 页面级别的跟踪 793
42.4.2 应用程序级别的跟踪 794
42.4.3 跟踪输出 795
42.4.4 跟踪查看器 795
42.4.5 自定义跟踪输出 796
42.5 运行状况监视 796
42.6 小结 798
第43章 高级调试技术 799
43.1 启动操作 799
43.2 用代码调试 801
43.2.1 Debugger类 801
43.2.2 Debug类和Trace类 802
43.3 调试运行着的应用程序 803
43.3.1 附加Windows进程 804
43.3.2 附加Web应用程序 805
43.3.3 远程调试 806
43.4 .NET Framework源 807
43.5 多线程和并行应用程序的
调试 809
43.6 调试SQL Server存储过程 810
43.7 混合模式的调试 810
43.8 post-mortem调试 811
43.8.1 生成转储文件 811
43.8.2 调试转储文件 812
43.9 小结 813
第Ⅹ部分 构建和部署
第44章 升级到Visual Studio 2010 817
44.1 从Visual Studio 2008升级 817
44.2 升级到.NET Framework 4.0 820
44.3 小结 821
第45章 定制构建 823
45.1 通用构建选项 823
45.2 手动配置依赖关系 826
45.3 Visual Basic编译页面 826
45.3.1 高级编译器设置 827
45.3.2 构建事件 829
45.4 C#构建页面 830
45.5 MSBuild 832
45.5.1 Visual Studio使用MSBuild
的方式 832
45.5.2 MSBuild模式 835
45.5.3 通过MSBuild任务设置
程序集的版本 836
45.6 小结 837
第46章 程序集的版本和签名 839
46.1 程序集的命名 839
46.2 版本的一致性 841
46.3 强名程序集 842
46.4 全局程序集缓存 843
46.5 对程序集进行签名 843
46.6 小结 845
第47章 混淆、应用程序监控和管理 847
47.1 MSIL反汇编器 847
47.2 反编译器 849
47.3 模糊处理代码 850
47.3.1 Dotfuscator Software
Services 850
47.3.2 模糊处理特性 854
47.3.3 警告 856
47.4 应用程序监控和管理 857
47.4.1 防篡改功能 858
47.4.2 运行期间的智能测试和
分析功能 859
47.4.3 应用程序终止 863
47.4.4 应用程序的使用情况跟踪 864
47.5 小结 865
第48章 打包和部署 867
48.1 Windows安装程序 867
48.1.1 构建安装程序 867
48.1.2 定制安装程序 872
48.1.3 添加自定义操作 875
48.1.4 服务安装程序 877
48.2 ClickOnce技术 880
48.2.1 部署 880
48.2.2 升级 884
48.3 小结 885
第49章 Web应用程序的部署 887
49.1 Web Site项目的部署 887
49.1.1 发布Web站点 888
49.1.2 复制Web站点 888
49.2 Web Application项目的部署 889
49.2.1 发布Web应用程序 889
49.2.2 打包Web应用程序 890
49.2.3 web.config文件转换 892
49.3 Web项目安装程序 893
49.4 Web平台安装程序 894
49.5 小结 898
第Ⅺ部分 定制和扩展Visual Studio
第50章 自动化模型 901
50.1 Visual Studio扩展选项 901
50.2 Visual Studio自动化模型 902
50.2.1 自动化模型概述 902
50.2.2 解决方案和项目 904
50.2.3 窗口和文档 904
50.2.4 命令 905
50.2.5 调试器 906
50.2.6 事件 906
50.3 小结 907
第51章 插件 909
51.1 开发插件 909
51.1.1 插件向导 909
51.1.2 项目结构 912
51.1.3 测试插件 913
51.1.4 .AddIn文件 914
51.1.5 Connect类 915
51.1.6 创建工具窗口 915
51.1.7 访问Visual Studio自动化
模型 918
51.1.8 处理Visual Studio事件 919
51.2 部署插件 922
51.3 小结 922
第52章 宏 923
52.1 理解宏 923
52.2 Macro Explorer工具窗口 924
52.3 Macros IDE 924
52.4 创建宏 925
52.4.1 记录宏 925
52.4.2 开发宏 926
52.5 运行宏 927
52.6 部署宏 927
52.7 小结 928
第53章 Managed Extensibility
Framework (MEF) 929
53.1 MEF入门 930
53.1.1 导入和导出 931
53.1.2 协定 933
53.1.3 目录 935
53.1.4 高级MEF 936
53.2 Visual Studio 2010编辑器 936
53.2.1 文本模型子系统 936
53.2.2 文本视图子系统 937
53.2.3 分类子系统 938
53.2.4 操作子系统 938
53.3 扩展编辑器 938
53.3.1 编辑器扩展点 939
53.3.2 编辑器服务 943
53.3.3 Check Comment Highlighter
扩展 943
53.4 小结 949
第Ⅻ部分 Visual Studio Ultimate
第54章 Visual Studio Ultimate for
Architects 953
54.1 项目建模 953
54.1.1 UML图 954
54.1.2 UML Model Explorer
工具窗口 958
54.1.3 使用分层图验证应用程序
体系结构 959
54.4.4 链接到Team Foundation
Server上 960
54.2 研究代码 961
54.2.1 Architecture Explorer窗口 961
54.2.2 依赖关系图 962
54.2.3 生成序列图 964
54.3 小结 964
第55章 Visual Studio Ultimate for
Developers 965
55.1 代码度量 965
55.1.1 代码行 966
55.1.2 继承的深度 967
55.1.3 类耦合 967
55.1.4 圈复杂性 967
55.1.5 可维护性指数 967
55.1.6 去除的代码 967
55.2 托管代码分析工具 967
55.3 C/C++代码分析工具 968
55.4 分析工具 969
55.4.1 配置Profiler会话 969
55.4.2 报表 970
55.5 独立的探查器 972
55.6 IntelliTrace工具 972
55.7 数据库工具 974
55.7.1 SQL-CLR数据库项目 974
55.7.2 脱机数据库架构 974
55.7.3 Data Generation工具 976
55.7.4 数据库重构 978
55.7.5 Schema Compare工具 978
55.7.6 Data Compare工具 979
55.7.7 静态分析 980
55.7.8 T-SQL编辑器 980
55.7.9 最佳实践 980
55.8 小结 981
第56章 Visual Studio Ultimate
for Testers 983
56.1 自动测试 983
56.1.1 Web性能测试 984
56.1.2 负载测试 986
56.1.3 测试负载代理 987
56.1.3 数据库单元测试 987
56.1.4 编码UI测试 988
56.1.5 一般测试 989
56.1.6 有序测试 989
56.2 关联代码和测试 989
56.2.1 Code Coverage工具 990
55.2.2 Test Impact Analysis工具 991
56.3 Visual Studio测试管理 992
56.4 Test and Lab Manager工具 993
56.4.1 Testing Center 993
56.4.2 Lab Center 995
56.5 小结 996
第57章 Team Foundation Server 997
57.1 团队项目 998
57.2 过程模板 998
57.3 工作项跟踪 999
57.3.1 工作项查询 999
57.3.2 工作项类型 1001
57.3.3 添加工作项 1001
57.3.4 工作项状态 1002
57.4 Excel和Project集成 1002
57.4.1 Excel 1002
57.4.2 Project 1003
57.5 版本控制 1004
57.5.1 在Solution Explorer
中工作 1005
57.5.2 签出 1006
57.5.3 签入 1007
57.5.4 解决冲突 1007
57.5.5 脱机工作 1009
57.5.6 标签 1009
57.5.7 历史 1010
57.5.8 批注 1010
57.5.9 搁置 1011
57.5.10 分支 1011
57.5.11 合并 1013
57.6 Team Foundation Build 1013
57.7 报表和商业智能 1016
57.8 团队门户 1017
57.8.1 文档 1017
57.8.2 过程指导 1017
57.8.3 SharePoint列表 1017
57.8.4 仪表盘 1017
57.9 Team System Web Access 1018
57.10 管理TFS 1019
57.11 TFS自动化和过程定制 1020
57.11.1 工作项类型 1020
57.11.2 定制过程模板 1021
57.12 小结 1021