第Ⅰ部分 集成开发环境 3
第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窗口 24
2.4小结 29
第3章 选项和定制 31
3.1 Start Page 31
3.1.1定制Start Page 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
第Ⅱ部分 入门 85
第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 JavaScriptIntelliSense上下文 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章Server Explorer 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
第Ⅲ部分 深入 179
第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 Assembly1nitialize和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.3小结 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 TextTemplate 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 PowerPacks 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
第Ⅳ部分 富客户端应用程序 305
第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选择Offce项目类型 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应用程序 363
第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验证工具 377
20.4 Web控件 379
20.4.1导航组件 379
20.4.2用户验证 380
20.4.3数据组件 381
20.4.4 Web Parts 384
20.5主/从页面 384
20.6富客户端开发 386
20.6.1用JavaScript开发 386
20.6.2使用ASP.NETAJAX 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
第Ⅵ部分 数据 497
第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
第Ⅶ部分 应用程序服务 615
第31章Windows CommunicationFoundation(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
第Ⅷ部分 配置和资源 697
第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
第Ⅸ部分 调试 745
第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 Intelli Trace (仅用于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 AJAXJavaScript 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
第Ⅹ部分 构建和部署 817
第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 901
第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.4AddIn文件 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 ExtensibilityFramework(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 953
第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 forDevelopers 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.4数据库单元测试 987
56.1.5编码UI测试 988
56.1.6一般测试 989
56.1.7有序测试 989
56.2关联代码和测试 989
56.2.1 Code Coverage工具 990
56.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