第Ⅰ部分集成開發環境第1章快速入門 3
1.1入門 3
1.1.1安裝VisualStudio2015 3
1.1.2運行VisualStudio2015 5
1.1.3VisualStudio真的支持云嗎 6
1.2VisualStudioIDE 7
1.3小結 12
第2章SolutionExplorer、Toolbox和Properties窗口 15
2.1SolutionExplorer窗口 15
2.1.1預覽文件 17
2.1.2常見任務 18
2.2Toolbox窗口 27
2.2.1排列組件 29
2.2.2添加組件 30
2.3Properties窗口 31
2.4小結 37
第3章選項和定制 39
3.1StartPage 39
3.2窗口布局 40
3.2.1查看窗口和工具欄 41
3.2.2停靠 42
3.2.3保存窗口布局 44
3.3編輯區域 45
3.3.1瀏覽打開的項 46
3.3.2字體和顏色 47
3.3.3可視化指南 48
3.3.4全屏模式 49
3.3.5跟蹤變化 49
3.4其他選項 50
3.4.1快捷鍵 50
3.4.2快速啟動 51
3.4.3項目和解決方案 52
3.4.4BuildandRun界面 54
3.4.5VB選項 54
3.5導入和導出設置 55
3.6小結 57
第4章VisualStudio工作區 59
4.1代碼編輯器 59
4.1.1代碼編輯器窗口的布局 59
4.1.2區域 60
4.1.3大綱 61
4.1.4代碼的格式化 62
4.1.5向前/向后 63
4.1.6其他代碼編輯器功能 63
4.1.7分割視圖 64
4.1.8代碼窗口的分離(浮動) 65
4.1.9復制SolutionExplorer 66
4.1.10創建選項卡組 67
4.1.11高級功能 67
4.2代碼導航 69
4.2.1PeekDefinition 69
4.2.2增強的滾動條 70
4.3命令窗口 73
4.4Immediate窗口 74
4.5ClassView工具窗口 75
4.6ErrorList窗口 76
4.7ObjectBrowser窗口 76
4.8DocumentOutline工具窗口 78
4.8.1HTML大綱 78
4.8.2控制大綱 79
4.9重新安排工具窗口 80
4.10小結 81
第5章查找和替換以及幫助 83
5.1QuickFind與QuickReplace 83
5.1.1QuickFind 84
5.1.2QuickReplace 85
5.1.3查找選項 85
5.1.4FindandReplace選項 86
5.2文件中查找/替換 86
5.2.1在文件中查找 86
5.2.2查找對話框選項 87
5.2.3正則表達式 88
5.2.4結果窗口 89
5.2.5在文件中替換 90
5.3訪問幫助 91
5.3.1瀏覽和搜索幫助系統 92
5.3.2配置幫助系統 92
5.4小結 93
第Ⅱ部分入門
第6章解決方案、項目和項 97
6.1解決方案的結構 97
6.2解決方案文件的格式 99
6.3解決方案的屬性 100
6.3.1常規屬性 100
6.3.2配置屬性 101
6.4項目類型 103
6.5項目文件格式 104
6.6項目屬性 105
6.6.1Application選項卡 105
6.6.2Compile選項卡(僅用于VisualBasic) 108
6.6.3Build選項卡(僅用于C#和F#) 110
6.6.4BuildEvents選項卡(僅用于C#和F#) 111
6.6.5Debug選項卡 111
6.6.6References選項卡(僅用于VisualBasic) 113
6.6.7Resources選項卡 114
6.6.8Services選項卡 114
6.6.9Settings選項卡 115
6.6.10ReferencePaths選項卡(僅用于C#和F#) 116
6.6.11Signing選項卡 116
6.6.12MyExtensions選項卡(僅用于VisualBasic) 117
6.6.13Security選項卡 118
6.6.14Publish選項卡 118
6.6.15CodeAnalysis選項卡 119
6.7Web應用程序項目屬性 120
6.7.1Web選項卡 120
6.7.2SilverlightApplications選項卡 121
6.7.3Package/PublishWeb選項卡 121
6.7.4Package/PublishSQL選項卡 122
6.8WebSite項目 123
6.9Nuget包 123
6.9.1NuGet包管理器 123
6.9.2PackageManagerConsole 125
6.10小結 125
第7章IntelliSense和書簽 127
7.1IntelliSense的解釋 127
7.1.1通用的IntelliSense 128
7.1.2IntelliSense和C++ 129
7.1.3單詞和短語的自動完成 130
7.1.4參數信息 135
7.1.5快速信息 136
7.2JavaScriptIntellisense 136
7.2.1JavaScriptIntelliSense上下文 137
7.2.2引用另一個JavaScript文件 137
7.3XAMLIntellisense 138
7.4IntelliSense選項 139
7.4.1通用選項 139
7.4.2C#的特定選項 140
7.5擴展IntelliSense 141
7.5.1代碼片段 141
7.5.2XML注釋 142
7.5.3添加自己的IntelliSense 142
7.6書簽和Bookmarks窗口 142
7.7小結 144
第8章代碼片段和重構 145
8.1代碼片段概述 145
8.1.1在Toolbox中存儲代碼塊 145
8.1.2代碼片段 146
8.1.3使用C#中的代碼片段 147
8.1.4VisualBasic中的代碼片段 148
8.1.5用代碼片段進行封裝 148
8.1.6CodeSnippetsManager 149
8.1.7創建代碼片段 150
8.1.8查看已有的代碼片段 151
8.1.9分布代碼段 154
8.2訪問重構支持 155
8.3重構操作 155
8.3.1ExtractMethod重構操作 155
8.3.2EncapsulateField重構操作 156
8.3.3ExtractInterface重構操作 157
8.3.4ChangeSignature重構操作 158
8.3.5Inline和ExplainingVariables重構操作 158
8.3.6Rename重構操作 159
8.3.7GenerateMethodStub重構操作 160
8.3.8OrganizeUsings重構操作 160
8.4小結 161
第9章ServerExplorer 163
9.1Servers連接 163
9.1.1EventLogs節點 164
9.1.2ManagementClasses節點 166
9.1.3ManagementEvents節點 168
9.1.4MessageQueues節點 171
9.1.5PerformanceCounters節點 174
9.1.6Services節點 177
9.2DataConnections節點 178
9.3SharePointConnections節點 178
9.4小結 179
第10章用ClassDesigner建模 181
10.1創建類圖 181
10.2設計界面 182
10.3工具箱 183
10.3.1實體 183
10.3.2連接器 184
10.4ClassDetails窗口 185
10.5Properties窗口 186
10.6布局 186
10.7導出類圖 187
10.8代碼的生成和重構 187
10.8.1拖放式代碼生成 187
10.8.2IntelliSense代碼生成 189
10.8.3用ClassDesigner進行重構 190
10.9小結 190
第Ⅲ部分深入
第11章單元測試 193
11.1第一個測試用例 193
11.1.1使用特性標識測試 198
11.1.2其他測試特性 199
11.1.3單元測試和CodeLens 201
11.2指定判斷條件 202
11.2.1Assert類 203
11.2.2StringAssert類 203
11.2.3CollectionAssert類 203
11.2.4ExpectedException特性 204
11.3初始化和清理 205
11.3.1TestInitialize和TestCleanup特性 205
11.3.2ClassInitialize和ClassCleanup特性 206
11.3.3AssemblyInitialize和AssemblyCleanup特性 206
11.4測試環境 206
11.4.1數據 207
11.4.2編寫測試輸出 209
11.5高級單元測試 210
11.5.1定制屬性 210
11.5.2測試私有成員 211
11.6IntelliTest 213
11.7小結 215
第12章使用XML注釋生成文檔 217
12.1內聯注釋 217
12.2XML注釋 218
12.2.1添加XML注釋 218
12.2.2XML注釋標記 219
12.3使用XML注釋 232
12.4用GhostDoc生成文檔 233
12.5用Sandcastle編譯文檔 234
12.6TaskList注釋 237
12.7小結 239
第13章確保代碼一致性的工具 241
13.1源控制 241
13.1.1選擇源控制存儲庫 242
13.1.2訪問源控制 243
13.2小結 246
第14章用T4生成代碼 247
14.1創建T4模板 247
14.2T4構建基塊 251
14.2.1Expression塊 251
14.2.2Statement塊 251
14.2.3ClassFeature塊 253
14.3T4的工作原理 254
14.4T4指令 257
14.4.1template指令 257
14.4.2output指令 258
14.4.3assembly指令 258
14.4.4import指令 258
14.4.5include指令 259
14.5疑難解答 260
14.5.1設計時錯誤 260
14.5.2編譯轉換錯誤 260
14.5.3執行轉換錯誤 261
14.5.4生成的代碼錯誤 261
14.6生成代碼資源 261
14.7RuntimeTextTemplate 265
14.7.1使用RuntimeTextTemplate 267
14.7.2RuntimeTextTemplate與標準T4模板的區別 269
14.8提示和技巧 270
14.9小結 270
第15章項目模板和項模板 271
15.1創建模板 271
15.1.1項模板 271
15.1.2項目模板 275
15.1.3模板結構 275
15.1.4模板參數 277
15.1.5模板位置 278
15.2擴展模板 278
15.2.1模板項目的安裝 279
15.2.2IWizard 279
15.2.3生成擴展項目模板 283
15.3StarterKit 284
15.4聯機模板 285
15.5小結 285
第16章語言相關特性 287
16.1使用正確的語言 287
16.1.1命令式語言 287
16.1.2聲明式語言 288
16.1.3動態語言 288
16.1.4函數式語言 289
16.1.5這些類別的含義 289
16.2兩種語言的選擇 290
16.3.NET編譯器平臺(Roslyn) 290
16.3.1編譯器API 291
16.3.2診斷API 291
16.3.3工作區API 291
16.4F# 291
16.4.1第一個F#程序 292
16.4.2研究F#語言特性 294
16.4.3類型提供程序 296
16.4.4查詢表達式 297
16.4.5自動實現屬性 297
16.5小結 298
第Ⅳ部分富客戶端應用程序
第17章WindowsForm應用程序 301
17.1入門 301
17.2Windows窗體 302
17.2.1Appearance屬性 303
17.2.2Layout屬性 304
17.2.3WindowStyle屬性 304
17.3窗體設計首選項 304
17.4添加和定位控件 306
17.4.1垂直對齊文本控件 307
17.4.2自動定位多個控件 307
17.4.3控件的Tab鍵順序和分層 308
17.4.4鎖定控件設計 309
17.4.5設置控件屬性 310
17.4.6基于服務的組件 310
17.4.7智能標記任務 311
17.5容器控件 312
17.5.1Panel和SplitContainer控件 312
17.5.2FlowLayoutPanel控件 313
17.5.3TableLayoutPanel控件 313
17.6停靠和錨定控件 314
17.7小結 315
第18章WindowsPresentationFoundation(WPF) 317
18.1WPF的概念 317
18.2開始使用WPF 318
18.2.1XAML基礎 320
18.2.2WPF控件 321
18.2.3WPF布局控件 322
18.3WPF設計器和XAML編輯器 324
18.3.1使用XAML編輯器 326
18.3.2使用WPF設計器 326
18.3.3Properties工具窗口 328
18.3.4數據綁定功能 333
18.4設置應用程序的樣式 337
18.5WindowsForms的交互操作性 339
18.5.1在WindowsForms中駐留WPF控件 339
18.5.2在WPF中駐留WindowsForms控件 341
18.6用WPFVisualizer調試 343
18.7小結 344
第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保護文檔設計 351
19.2.3添加ActionsPane 351
19.3創建應用程序級插件 353
19.3.1一些Outlook概念 353
19.3.2創建Outlook窗體區域 354
19.4調試Office應用程序 358
19.4.1注銷插件 358
19.4.2禁用的插件 359
19.5部署Office應用程序 360
19.6小結 361
第20章WindowsStore應用程序 363
20.1WindowsStore應用程序的定義 363
20.1.1呈現內容 364
20.1.2對齊和縮放 365
20.1.3語義式縮放 365
20.1.4協定 365
20.1.5磁貼 366
20.1.6接受云 366
20.2創建WindowsStore應用程序 366
20.2.1Windows8模擬器 369
20.2.2WindowsStore應用程序 372
20.3.NETNative編譯 373
20.4小結 375
第21章WindowsPhone 377
21.1創建WindowsPhone項目 377
21.2調試應用程序 379
21.2.1使用WindowsPhone模擬器 380
21.2.2部署到真正的手機上 381
21.3WindowsPhoneDeveloperPowerTools 383
21.3.1應用程序驗證器 385
21.3.2性能監控器 386
21.3.3性能記錄器 387
21.4小結 387
第22章通用應用程序 389
22.1移動類庫 389
22.2共享的項目 393
22.3通用的Windows應用程序 393
22.4小結 397
第Ⅴ部分Web應用程序
第23章ASP.NETWeb窗體 401
23.1WebApplication項目和WebSite項目 401
23.2創建Web項目 402
23.2.1創建WebSite項目 402
23.2.2創建WebApplication項目 405
23.3設計Web窗體 408
23.3.1HTMLDesigner 408
23.3.2定位控件和HTML元素 410
23.3.3格式化控件和HTML元素 412
23.3.4CSS工具 414
23.3.5驗證工具 417
23.4Web控件 419
23.4.1導航組件 419
23.4.2用戶身份驗證 420
23.4.3數據組件 421
23.4.4Web部件 424
23.5主頁面 425
23.6富客戶端開發 426
23.6.1用JavaScript開發 427
23.6.2使用ASP.NETAJAX 428
23.7小結 430
第24章ASP.NETMVC 431
24.1Model-View-Controller 431
24.2開始使用ASP.NETMVC 432
24.3選擇Model 435
24.4Controller和action方法 435
24.5用View顯示UI 439
24.6高級MVC 446
24.6.1路由 446
24.6.2action方法參數 450
24.6.3區域 453
24.6.4驗證 455
24.6.5部分View 457
24.6.6DynamicData模板 458
24.6.7jQuery 460
24.7ASP.NETMVC6(和ASP.NET5) 462
24.8小結 466
第25章Silverlight 467
25.1Silverlight簡介 468
25.2開始使用Silverlight 469
25.3NavigationFramework 474
25.4設置主題 475
25.5在瀏覽器外部運行 477
25.6小結 480
第26章SharePoint 481
26.1SharePoint執行模型 481
26.1.1場解決方案 481
26.1.2沙箱解決方案 482
26.1.3應用程序模型 482
26.2準備開發環境 483
26.3研究SharePoint2013 484
26.4創建SharePoint項目 486
26.5構建定制的SharePoint組件 489
26.5.1開發Web部件 489
26.5.2創建內容類型和列表 490
26.5.3添加事件接收器 493
26.5.4創建SharePoint工作流 495
26.6使用Feature 497
26.7打包和部署 497
26.8小結 500
第27章WindowsAzure 501
27.1WindowsAzure平臺 501
27.1.1ComputeEmulator 503
27.1.2表、blob和隊列存儲器 504
27.1.3應用程序部署 508
27.2SQLAzure 510
27.3AppFabric 512
27.3.1ServiceBus 512
27.3.2AccessControlService 512
27.4Azure移動服務 512
27.5Azure網站 513
27.6Azure虛擬機 513
27.7小結 515
第Ⅵ部分數據
第28章可視化數據庫工具 519
28.1VisualStudio2015中的數據庫窗口 519
28.1.1ServerExplorer窗口 520
28.1.2DataSources窗口 524
28.1.3SQLServerObjectExplorer 525
28.2編輯數據 526
28.3小結 527
第29章數據集和數據綁定 529
29.1DataSet概述 529
29.1.1添加數據源 530
29.1.2DataSet設計器 531
29.2綁定數據 534
29.2.1BindingSource類 536
29.2.2BindingNavigator類 538
29.2.3選擇數據源 541
29.2.4保存更改 544
29.2.5插入新記錄 545
29.2.6驗證 546
29.2.7定制的DataSet 548
29.2.8BindingSource鏈和DataGridView控件 550
29.3數據源的使用 551
29.4小結 555
第30章LINQ 557
30.1LINQ提供程序 557
30.2舊式查詢 558
30.3查詢的各個部分 560
30.3.1From語句 560
30.3.2Select語句 561
30.3.3Where語句 562
30.3.4GroupBy語句 562
30.3.5定制投射 563
30.3.6OrderBy語句 564
30.4調試和執行 565
30.5LINQtoXML對象模型 566
30.5.1VB中的XML字面量 567
30.5.2用LINQ創建XML 568
30.6查詢XML 570
30.7模式支持 570
30.8LINQtoSQL 572
30.8.1創建對象模型 572
30.8.2用LINQtoSQL查詢 574
30.8.3綁定LINQtoSQL對象 579
30.9小結 581
第31章ADO.NETEntityFramework 583
31.1什么是EntityFramework 584
31.1.1與LINQtoSQL比較 584
31.1.2EntityFramework概念 584
31.2入門 585
31.3創建實體模型 585
31.3.1實體數據模型向導 585
31.3.2EntityFramework設計器 589
31.3.3創建/修改實體 592
31.3.4創建/修改實體關聯 595
31.3.5實體繼承 596
31.3.6驗證實體模型 596
31.3.7根據數據庫的修改來更新實體模型 596
31.4查詢實體模型 597
31.4.1LINQtoEntities概述 597
31.4.2獲得對象上下文 598
31.4.3CRUD操作 598
31.4.4導航實體關聯 602
31.5高級功能 604
31.5.1從實體模型更新數據庫 604
31.5.2給實體添加業務邏輯 604
31.5.3POCO 604
31.6小結 605
第32章報表 607
32.1報表入門 607
32.2設計報表 609
32.2.1定義數據源 610
32.2.2報表控件 612
32.2.3表達式、占位符和聚合 625
32.2.4自定義代碼 628
32.2.5報表布局 632
32.2.6子報表 634
32.2.7Report向導 636
32.3呈現報表 637
32.3.1ReportViewer控件 637
32.3.2生成報表 638
32.3.3以不同格式呈現報表 639
32.4部署報表 640
32.5小結 640
第Ⅶ部分應用程序服務
第33章WindowsCommunicationFoundation(WCF) 643
33.1WCF的概念 643
33.2入門 644
33.3定義協定 644
33.3.1創建服務協定 645
33.3.2創建數據協定 647
33.4配置WCF服務端點 648
33.5承載WCF服務 652
33.6使用WCF服務 657
33.7小結 661
第34章WindowsWorkflowFoundation(WF) 663
34.1WindowsWorkflowFoundation的概念 663
34.2使用WindowsWorkflow的原因 664
34.3工作流的概念 664
34.3.1活動 664
34.3.2控制流活動 666
34.3.3表達式 666
34.3.4工作流運行庫/調度器 666
34.3.5書簽 666
34.3.6持久化 667
34.3.7跟蹤 667
34.4入門 668
34.5WorkflowFoundation設計器 669
34.6創建工作流 672
34.6.1設計工作流 672
34.6.2編寫CodeActivities 675
34.6.3執行工作流 676
34.6.4調試工作流 678
34.6.5測試工作流 679
34.7小結 679
第35章客戶端應用程序服務 681
35.1客戶端服務 681
35.2角色授權 684
35.3用戶身份驗證 686
35.4設置 688
35.5登錄窗體 693
35.6脫機支持 695
35.7小結 698
第36章同步服務 699
36.1偶爾連接的應用程序 699
36.2ServerDirect 700
36.3同步服務入門 703
36.4N層上的同步服務 707
36.5小結 708
第Ⅷ部分配置和資源
第37章配置文件 711
37.1配置文件 711
37.1.1machine.config文件 711
37.1.2web.config文件 712
37.1.3app.config文件 713
37.1.4security.config文件 713
37.1.5applicationHost.config文件 714
37.2配置模式 714
37.2.1configurationSections節 714
37.2.2startup節 715
37.2.3runtime節 716
37.2.4system.runtime.remoting節 716
37.2.5system.net節 716
37.2.6cryptographySettings節 717
37.2.7system.diagnostics節 717
37.2.8system.web節 718
37.2.9compiler節 718
37.2.10配置特性 719
37.3應用程序設置 720
37.3.1使用appSettings節 720
37.3.2項目設置 720
37.3.3動態屬性 721
37.3.4自定義配置節 723
37.4用戶設置 727
37.5使用設置引用的項目 728
37.6小結 730
第38章連接字符串 731
38.1連接字符串向導 731
38.2SQLServer格式 736
38.3構造代碼 737
38.4加密連接字符串 739
38.5LocalDB 741
38.6AzureSQLDatabase 741
38.7小結 743
第39章資源文件 745
39.1資源的概念 745
39.1.1文本文件資源 746
39.1.2resx資源文件 747
39.1.3二進制資源文件 748
39.1.4添加資源 748
39.1.5嵌入文件作為資源 749
39.1.6資源命名 749
39.1.7訪問資源 749
39.1.8設計器文件 750
39.2為應用程序提供資源 751
39.3輔助資源 753
39.3.1區域 753
39.3.2創建區域資源 754
39.3.3加載區域資源文件 754
39.3.4輔助區域資源 755
39.4訪問細節 755
39.4.1加載位圖和圖標 755
39.4.2跨程序集引用 756
39.4.3ComponentResourceManager對象 756
39.5編碼資源文件 757
39.5.1ResourceReader和ResourceWriter 757
39.5.2ResxResourceReader和ResxResourceWriter 757
39.6定制資源 758
39.7小結 761
第Ⅸ部分調試
第40章使用調試窗口 765
40.1代碼窗口 765
40.1.1斷點 765
40.1.2數據提示 766
40.2Breakpoints窗口 766
40.3Output窗口 767
40.4Immediate窗口 767
40.5Watch窗口 769
40.5.1QuickWatch窗口 769
40.5.2Watch1-4窗口 770
40.5.3Autos窗口和Locals窗口 771
40.6代碼執行窗口 771
40.6.1CallStack窗口 771
40.6.2Threads窗口 771
40.6.3Modules窗口 772
40.6.4Processes窗口 772
40.7Memory窗口 773
40.7.1Memory1-4窗口 773
40.7.2Disassembly窗口 774
40.7.3Registers窗口 774
40.8并行調試窗口 775
40.8.1ParallelStacks窗口 775
40.8.2ParallelTasks窗口 777
40.9Exceptions窗口 777
40.11小結 780
第41章斷點調試 781
41.1斷點 781
41.1.1設置斷點 781
41.1.2添加中斷條件 784
41.1.3斷點操作 786
41.2跟蹤點 788
41.3執行控制 789
41.3.1單步執行代碼 789
41.3.2移動執行點 790
41.4EditandContinue功能 790
41.4.1原始編輯 791
41.4.2停止應用修改 791
41.5小結 791
第42章數據提示、調試代理和可視化工具 793
42.1數據提示 793
42.2調試器特性 795
42.2.1DebuggerBrowsable特性 795
42.2.2DebuggerDisplay特性 796
42.2.3DebuggerHidden特性 797
42.2.4DebuggerStepThrough特性 798
42.2.5DebuggerNonUserCode特性 798
42.2.6DebuggerStepperBoundary特性 799
42.3類型代理 799
42.4可視化工具 801
42.5高級技術 803
42.6小結 805
第43章調試Web應用程序 807
43.1調試服務器端的ASP.NET代碼 807
43.1.1Web應用程序異常 809
43.1.2EditandContinue功能 812
43.1.3錯誤處理 812
43.2調試客戶端的JavaScript 813
43.2.1在JavaScript代碼中設置斷點 813
43.2.2調試動態生成的JavaScript代碼 814
43.2.3調試ASP.NETAJAXJavaScript 815
43.3跟蹤 815
43.3.1頁面級別的跟蹤 816
43.3.2應用程序級別的跟蹤 817
43.3.3跟蹤輸出 817
43.3.4跟蹤查看器 818
43.3.5自定義跟蹤輸出 818
43.4運行狀況監視 818
43.5小結 820
第44章高級調試技術 821
44.1啟動操作 821
44.2用代碼調試 823
44.2.1Debugger類 823
44.2.2Debug類和Trace類 824
44.3調試運行中的應用程序 826
44.3.1附加Windows進程 826
44.3.2附加Web應用程序 827
44.3.3遠程調試 828
44.4DiagnosticTools 829
44.4.1IntelliTrace 829
44.4.2內存和CPU的使用 831
44.4.3CodeMapDebugging 833
44.5.NETFramework源 836
44.6多線程和并行應用程序的調試 836
44.7調試SQLServer存儲過程 838
44.8混合模式的調試 839
44.9postmortem調試 839
44.9.1生成轉儲文件 839
44.9.2調試轉儲文件 840
44.10小結 842
第Ⅹ部分構建和部署
第45章升級到VisualStudio2015 845
45.1從最近的VisualStudio版本升級 845
45.2升級到.NETFramework4.6 848
45.3小結 849
第46章定制構建 851
46.1通用構建選項 851
46.2手動配置依賴關系 854
46.3VisualBasic編譯頁面 854
46.3.1高級編譯器設置 855
46.3.2構建事件 857
46.4C#構建頁面 859
46.5MSBuild 860
46.5.1VisualStudio使用MSBuild的方式 861
46.5.2MSBuild模式 863
46.5.3通過MSBuild任務設置程序集的版本 865
46.6小結 866
第47章程序集的版本和簽名 867
47.1程序集的命名 867
47.2版本的一致性 870
47.3強名程序集 871
47.4全局程序集緩存 871
47.5對程序集進行簽名 872
47.6小結 874
第48章模糊處理、應用程序監控和管理 875
48.1IL反編譯器 875
48.2反匯編器 877
48.3模糊處理代碼 878
48.3.1DotfuscatorandAnalytics 878
48.3.2模糊處理特性 882
48.3.3警告 884
48.4應用程序監控和管理 886
48.4.1防篡改功能 887
48.4.2應用程序檢測和分析功能 888
48.5小結 890
第49章打包和部署 891
49.1WindowsInstallerXML工具集 891
49.1.1構建安裝程序 892
49.1.2使用Heat創建片段 894
49.1.3服務安裝程序 897
49.2ClickOnce技術 898
49.2.1部署 898
49.2.2升級 903
49.3小結 904
第50章Web應用程序的部署 905
50.1Web部署 905
50.1.1發布Web應用程序 906
50.1.2發布到Azure 907
50.2Web項目安裝程序 909
50.3Web平臺安裝程序 910
50.4小結 914
第?部分定制和擴展VisualStudio
第51章自動化模型 917
51.1VisualStudio可擴展選項 917
51.2VisualStudio自動化模型 918
51.2.1自動化模型概述 918
51.2.2解決方案和項目 919
51.2.3窗口和文檔 920
51.2.4命令 922
51.2.5調試器 923
51.2.6事件 924
51.3小結 924
第52章VSPackage 925
52.1開發VSPackageExtension 925
52.1.1VSPackage向導 925
52.1.2項目結構 929
52.1.3測試包 931
52.1.4創建工具窗口 932
52.2部署VSPackage 934
52.3小結 936
第53章ManagedExtensibilityFramework(MEF) 937
53.1MEF入門 938
53.1.1導入和導出 939
53.1.2協定 941
53.1.3目錄 943
53.1.4高級MEF 944
53.2VisualStudio編輯器 944
53.2.1文本模型子系統 945
53.2.2文本視圖子系統 945
53.2.3分類子系統 946
53.2.4操作子系統 946
53.3擴展編輯器 946
53.3.1編輯器擴展點 948
53.3.2編輯器服務 951
53.3.3CheckCommentHighlighter擴展 951
53.4小結 958
第?部分VisualStudioEnterprise
第54章VisualStudioEnterpriseforArchitects 961
54.1項目建模 961
54.1.1UML圖 962
54.1.2UMLModelExplorer工具窗口 967
54.1.3使用分層圖驗證應用程序架構 968
54.1.4鏈接到TeamFoundationServer 969
54.2使用CodeMap研究代碼 970
54.3小結 972
第55章VisualStudioEnterpriseforDevelopers 973
55.1代碼度量 973
55.1.1代碼行數 974
55.1.2繼承的深度 975
55.1.3類耦合 975
55.1.4圈復雜度 975
55.1.5可維護性指數 975
55.1.6去除的代碼 975
55.2代碼分析工具 976
55.3C/C++代碼分析工具 977
55.4分析工具 977
55.4.1配置Profiler會話 978
55.4.2報表 979
55.5獨立的探查器 980
55.6IntelliTrace工具 981
55.7數據庫工具 983
55.7.1數據庫模式 983
55.7.2SQL-CLR支持 985
55.7.3數據庫重構 986
55.7.4SchemaCompare工具 987
55.7.5靜態分析 988
55.7.6Transact-SQL編輯器 988
55.7.7最佳實踐 988
55.8小結 989
第56章VisualStudioEnterpriseforTesters 991
56.1自動測試 991
56.1.1Web性能測試 992
56.1.2負載測試 994
56.1.3編碼UI測試 997
56.1.4一般測試 998
56.1.5有序測試 998
56.2關聯代碼和測試 999
56.3VisualStudio測試管理 1000
56.4MicrosoftTestManager工具 1001
56.4.1TestingCenter 1002
56.4.2LabCenter 1004
56.5小結 1004
第57章TeamFoundationServer 1007
57.1團隊項目 1008
57.2過程模板 1008
57.3工作項跟蹤 1011
57.3.1工作項查詢 1011
57.3.2工作項類型 1013
57.3.3添加工作項 1013
57.3.4工作項狀態 1014
57.4Excel和Project集成 1014
57.4.1Excel 1015
57.4.2Project 1015
57.5版本控制 1016
57.5.1在SolutionExplorer中工作 1017
57.5.2簽出 1017
57.5.3簽入 1018
57.5.4解決沖突 1018
57.5.5脫機工作 1020
57.5.6標簽 1020
57.5.7歷史 1021
57.5.8注解 1022
57.5.9擱置 1022
57.5.10分支 1023
57.5.11合并 1024
57.6TeamFoundationBuild 1024
57.7報表和商業智能 1026
57.8團隊門戶 1027
57.9小結 1028