第ⅰ部分 c# 語 言
第1章 .net體係結構 3
1.1 c#與.net的關係 3
1.2 公共語言運行庫 4
1.2.1 平颱無關性 4
1.2.2 提高性能 4
1.2.3 語言的互操作性 5
1.3 中間語言 6
1.3.1 麵嚮對象和接口的支持 6
1.3.2 不同的值類型和引用類型 7
1.3.3 強數據類型化 8
1.3.4 通過異常處理錯誤 12
1.3.5 特性的使用 13
1.4 程序集 13
1.4.1 私有程序集 14
1.4.2 共享程序集 14
1.4.3 反射 14
1.4.4 並行編程 15
1.5 .net framework類 15
1.6 名稱空間 16
.1.7 用c#創建.net應用程序 16
1.7.1 創建asp.net應用程序 16
1.7.2 創建windows窗體 18
1.7.3 使用wpf 18
1.7.4 windows控件 19
1.7.5 windows服務 19
1.7.6 wcf 19
1.7.7 windows wf 19
1.8 c#在.net企業體係結構
中的作用 19
1.9 小結 21
第2章 核心c# 23
2.1 第一個c#程序 23
2.1.1 代碼 24
2.1.2 編譯並運行程序 24
2.1.3 詳細介紹 25
2.2 變量 26
2.2.1 變量的初始化 27
2.2.2 類型推斷 28
2.2.3 變量的作用域 29
2.2.4 常量 31
2.3 預定義數據類型 32
2.3.1 值類型和引用類型 32
2.3.2 cts類型 33
2.3.3 預定義的值類型 33
2.3.4 預定義的引用類型 36
2.4 流控製 38
2.4.1 條件語句 38
2.4.2 循環 42
2.4.3 跳轉語句 45
2.5 枚舉 46
2.6 名稱空間 47
2.6.1 using語句 49
2.6.2 名稱空間的彆名 49
2.7 main()方法 50
2.7.1 多個main()方法 50
2.7.2 給main()方法傳遞參數 52
2.8 有關編譯c#文件的更多內容 52
2.9 控製颱i/o 54
2.10 使用注釋 56
2.10.1 源文件中的內部注釋 56
2.10.2 xml文檔 56
2.11 c#預處理器指令 58
2.11.1 #define和 #undef 59
2.11.2 #if, #elif, #else和#endif 59
2.11.3 #warning和 # error 60
2.11.4 #region和#endregion 61
2.11.5 #line 61
2.11.6 #pragma 61
2.12 c#編程規則 62
2.12.1 關於標識符的規則 62
2.12.2 用法約定 63
2.13 小結 68
第3章 對象和類型 69
3.1 類和結構 69
3.2 類 70
3.2.1 數據成員 70
3.2.2 函數成員 71
3.2.3 隻讀字段 83
3.3 匿名類型 84
3.4 結構 85
3.4.1 結構是值類型 86
3.4.2 結構和繼承 87
3.4.3 結構的構造函數 87
3.5 部分類 87
3.6 靜態類 89
3.7 object類 89
3.7.1 system.object()方法 90
3.7.2 tostring()方法 90
3.8 擴展方法 92
3.9 小結 93
第4章 繼承 95
4.1 繼承的類型 95
4.1.1 實現繼承和接口繼承 95
4.1.2 多重繼承 95
4.1.3 結構和類 96
4.2 實現繼承 96
4.2.1 虛方法 97
4.2.2 隱藏方法 98
4.2.3 調用函數的基類版本 99
4.2.4 抽象類和抽象函數 100
4.2.5 密封類和密封方法 100
4.2.6 派生類的構造函數 101
4.3 修飾符 106
4.3.1 可見性修飾符 106
4.3.2 其他修飾符 106
4.4 接口 107
4.4.1 定義和實現接口 108
4.4.2 派生的接口 111
4.5 小結 113
第5章 泛型 115
5.1 概述 115
5.1.1 性能 116
5.1.2 類型安全 117
5.1.3 二進製代碼的重用 117
5.1.4 代碼的擴展 117
5.1.5 命名約定 118
5.2 創建泛型類 118
5.3 泛型類的功能 122
5.3.1 默認值 123
5.3.2 約束 123
5.3.3 繼承 126
5.3.4 靜態成員 127
5.4 泛型接口 127
5.4.1 協變和抗變 128
5.4.2 泛型接口的協變 129
5.4.3 泛型接口的抗變 130
5.5 泛型結構 131
5.6 泛型方法 134
5.6.1 泛型方法示例 134
5.6.2 帶約束的泛型方法 135
5.6.3 帶委托的泛型方法 136
5.6.4 泛型方法規範 137
5.7 小結 138
第6章 數組 139
6.1 簡單數組 139
6.1.1 數組的聲明 139
6.1.2 數組的初始化 139
6.1.3 訪問數組元素 140
6.1.4 使用引用類型 141
6.2 多維數組 142
6.3 鋸齒數組 143
6.4 array類 144
6.4.1 創建數組 145
6.4.2 復製數組 146
6.4.3 排序 147
6.5 數組作為參數 150
6.5.1 數組協變 151
6.5.2 arraysegment[t] 151
6.6 枚舉 152
6.6.1 ienumerator接口 152
6.6.2 foreach語句 153
6.6.3 yield語句 153
6.7 元組 158
6.8 結構比較 159
6.9 小結 162
第7章 運算符和類型強製轉換 163
7.1 運算符 163
7.1.1 運算符的簡化操作 165
7.1.2 運算符的優先級 169
7.2 類型的安全性 169
7.2.1 類型轉換 170
7.2.2 裝箱和拆箱 173
7.3 比較對象的相等性 174
7.3.1 比較引用類型的相等性 174
7.3.2 比較值類型的相等性 175
7.4 運算符重載 176
7.4.1 運算符的工作方式 177
7.4.2 運算符重載的示例:
vector結構 178
7.5 用戶定義的類型強製轉換 185
7.5.1 實現用戶定義的類型
強製轉換 186
7.5.2 多重類型強製轉換 192
7.6 小結 195
第8章 委托、lambda錶達式
和事件 197
8.1 委托 197
8.1.1 聲明委托 198
8.1.2 使用委托 199
8.1.3 簡單的委托示例 202
8.1.4 action[t]和func[t]
委托 204
8.1.5 bubblesorter示例 204
8.1.6 多播委托 207
8.1.7 匿名方法 210
8.2 lambda錶達式 211
8.2.1 參數 212
8.2.2 多行代碼 212
8.2.3 lambda錶達式外部的
變量 213
8.3 事件 214
8.3.1 事件發布程序 214
8.3.2 事件偵聽器 216
8.3.3 弱事件 217
8.4 小結 220
第9章 字符串和正則錶達式 221
9.1 system.string類 221
9.1.1 創建字符串 222
9.1.2 stringbuilder成員 225
9.1.3 格式字符串 226
9.2 正則錶達式 231
9.2.1 正則錶達式概述 232
9.2.2 regularexpressions
playaround示例 233
9.2.3 顯示結果 235
9.2.4 匹配、組閤和捕獲 237
9.3 小結 238
第10章 集閤 239
10.1 集閤接口和類型 239
10.2 列錶 240
10.2.1 創建列錶 241
10.2.2 隻讀集閤 250
10.3 隊列 250
10.4 棧 254
10.5 鏈錶 256
10.6 有序列錶 261
10.7 字典 262
10.7.1 鍵的類型 263
10.7.2 字典示例 264
10.7.3 lookup類 268
10.7.4 有序字典 269
10.8 集 269
10.9 可觀察的集閤 271
10.10 位數組 272
10.10.1 bitarray類 273
10.10.2 bitvector32結構 275
10.11 並發集閤 277
10.12 性能 279
10.13 小結 281
第11章 linq 283
11.1 linq概述 283
11.1.1 列錶和實體 283
11.1.2 linq查詢 287
11.1.3 擴展方法 288
11.1.4 推遲查詢的執行 289
11.2 標準的查詢操作符 291
11.2.1 篩選 293
11.2.2 用索引篩選 293
11.2.3 類型篩選 294
11.2.4 復閤的from子句 294
11.2.5 排序 295
11.2.6 分組 296
11.2.7 對嵌套的對象分組 297
11.2.8 連接 298
11.2.9 集閤操作 300
11.2.10 閤並 301
11.2.11 分區 302
11.2.12 聚閤操作符 303
11.2.13 轉換 304
11.2.14 生成操作符 305
11.3 並行linq 306
11.3.1 並行查詢 306
11.3.2 分區器 307
11.3.3 取消 307
11.4 錶達式樹 308
11.5 linq提供程序 311
11.6 小結 311
第12章 動態語言擴展 313
12.1 dlr 313
12.2 dynamic類型 313
12.3 包含dlr scriptruntime 318
12.4 dynamicobject和
expandoobject 321
12.4.1 dynamicobject 321
12.4.2 expandoobject 323
12.5 小結 324
第13章 內存管理和指針 325
13.1 後颱內存管理 325
13.1.1 值數據類型 325
13.1.2 引用數據類型 327
13.1.3 垃圾迴收 328
13.2 釋放非托管的資源 330
13.2.1 析構函數 330
13.2.2 idisposable接口 331
13.2.3 實現idisposable接口
和析構函數 332
13.3 不安全的代碼 334
13.3.1 用指針直接訪問內存 334
13.3.2 指針示例:
pointerplayground 343
13.3.3 使用指針優化性能 347
13.4 小結 350
第14章 反射 351
14.1 自定義特性 351
14.1.1 編寫自定義特性 352
14.1.2 自定義特性示例:
whatsnewattributes 355
14.2 反射 358
14.2.1 system.type類 358
14.2.2 typeview示例 360
14.2.3 assembly類 362
14.2.4 完成whatsnew
attributes示例 364
14.3 小結 368
第15章 錯誤和異常 369
15.1 異常類 369
15.2 捕獲異常 371
15.2.1 實現多個catch塊 373
15.2.2 在其他代碼中捕獲異常 376
15.2.3 system.exception屬性 376
15.2.4 沒有處理異常時所發生
的情況 377
15.2.5 嵌套的 try塊 378
15.3 用戶定義的異常類 379
15.3.1 捕獲用戶定義的異常 380
15.3.2 拋齣用戶定義的異常 382
15.3.3 定義用戶定義的異常類 385
15.4 小結 387
第ⅱ部分 visual studio
第16章 visual studio 2010 391
16.1 使用visual studio 2010 391
16.1.1 創建項目 395
16.1.2 解決方案和項目的區彆 401
16.1.3 windows應用程序代碼 403
16.1.4 項目的瀏覽和編碼 404
16.1.5 生成項目 411
16.1.6 調試代碼 415
16.2 重構工具 418
16.3 麵嚮多個版本的
.net framework 420
16.4 wpf、wcf、wf等 421
16.4.1 在visual studio 2010
中構建wpf應用程序 421
16.4.2 在visual studio 2010
中構建wf應用程序 423
16.5 小結 424
第17章 部署 425
17.1 部署的規劃 425
17.1.1 部署選項 426
17.1.2 部署要求 426
17.1.3 部署.net運行庫 427
17.2 簡單的部署選項 427
17.2.1 xcopy部署 428
17.2.2 xcopy和web
應用程序 428
17.2.3 發布web站點 429
17.3 visual studio 2010安裝
和部署項目 429
17.3.1 windows installer 430
17.3.2 創建安裝程序 430
17.4 clickonce 437
17.4.1 clickonce操作 437
17.4.2 發布clickonce
應用程序 438
17.4.3 clickonce設置 438
17.4.4 clickonce文件的
應用程序緩存 439
17.4.5 應用程序的安全性 439
17.5 visual studio 2010
高級選項 440
17.5.1 文件係統編輯器 440
17.5.2 注冊錶編輯器 440
17.5.3 文件類型編輯器 440
17.5.4 用戶界麵編輯器 441
17.5.5 自定義動作編輯器 442
17.5.6 launch conditions
編輯器 443
17.6 小結 444
第ⅲ部分 基 礎
第18章 程序集 447
18.1 程序集的含義 447
18.1.1 程序集的功能 448
18.1.2 程序集的結構 448
18.1.3 程序集清單 449
18.1.4 名稱空間、程序集
和組件 449
18.1.5 私有程序集和共享
程序集 449
18.1.6 附屬程序集 450
18.1.7 查看程序集 450
18.2 創建程序集 451
18.2.1 創建模塊和程序集 451
18.2.2 程序集的特性 452
18.2.3 動態加載和創建
程序集 454
18.3 應用程序域 457
18.4 共享程序集 461
18.4.1 強名 462
18.4.2 使用強名獲得完整性 462
18.4.3 全局程序集緩存 463
18.4.4 創建共享程序集 463
18.4.5 創建強名 464
18.4.6 安裝共享程序集 465
18.4.7 使用共享程序集 465
18.4.8 程序集的延遲簽名 466
18.4.9 引用 467
18.4.10 本機映像生成器 468
18.5 配置.net應用程序 469
18.5.1 配置類彆 469
18.5.2 綁定程序集 470
18.6 版本問題 471
18.6.1 版本號 472
18.6.2 通過編程方式獲取版本 472
18.6.3 綁定到程序集版本 473
18.6.4 發行者策略文件 474
18.6.5 運行庫的版本 475
18.7 小結 476
第19章 檢測 477
19.1 代碼協定 477
19.1.1 前提條件 479
19.1.2 後置條件 480
19.1.3 常量 481
19.1.4 接口的協定 481
19.2 跟蹤 483
19.2.1 跟蹤源 484
19.2.2 跟蹤開關 485
19.2.3 跟蹤偵聽器 486
19.2.4 篩選器 488
19.2.5 相關性 489
19.3 事件日誌 492
19.3.1 事件日誌體係結構 493
19.3.2 事件日誌類 494
19.3.3 創建事件源 494
19.3.4 寫入事件日誌 495
19.3.5 資源文件 496
19.4 性能監控 500
19.4.1 性能監控類 500
19.4.2 性能計數器生成器 500
19.4.3 添加performance
counter組件 503
19.4.4 perfmon.exe 505
19.5 小結 506
第20章 綫程、任務和同步 507
20.1 概述 507
20.2 異步委托 508
20.2.1 投票 508
20.2.2 等待句柄 509
20.2.3 異步迴調 510
20.3 thread類 512
20.3.1 給綫程傳遞數據 513
20.3.2 後颱綫程 514
20.3.3 綫程的優先級 515
20.3.4 控製綫程 515
20.4 綫程池 516
20.5 任務 517
20.5.1 啓動任務 517
20.5.2 連續的任務 518
20.5.3 任務層次結構 519
20.5.4 任務的結果 520
20.6 parallel類 521
20.6.1 用parallel.for()
方法循環 521
20.6.2 使用parallel.foreach()
方法循環 523
20.6.3 通過parallel.invoke()
方法調用多個方法 524
20.7 取消架構 524
20.7.1 parallel.for()方法
的取消 524
20.7.2 任務的取消 526
20.8 綫程問題 527
20.8.1 爭用條件 527
20.8.2 死鎖 530
20.9 同步 532
20.9.1 lock語句和綫程安全 532
20.9.2 interlocked類 538
20.9.3 monitor類 539
20.9.4 spinlock結構 540
20.9.5 waithandle基類 540
20.9.6 mutex類 541
20.9.7 semaphore類 542
20.9.8 events類 544
20.9.9 barrier類 547
20.9.10 readerwriterlockslim
類 549
20.10 timer類 552
20.11 基於事件的異步模式 554
20.11.1 backgroundworker
類 554
20.11.2 啓用取消功能 557
20.11.3 啓用進度功能 558
20.11.4 創建基於事件的異步
組件 559
20.12 小結 563
第21章 安全性 565
21.1 身份驗證和授權 565
21.1.1 標識和principal 565
21.1.2 角色 567
21.1.3 聲明基於角色的安全性 567
21.1.4 客戶端應用程序服務 568
21.2 加密 573
21.2.1 簽名 575
21.2.2 交換密鑰和安全傳輸 576
21.3 資源的訪問控製 579
21.4 代碼訪問安全性 582
21.4.1 第2級安全透明性 582
21.4.2 權限 583
21.5 使用證書發布代碼 588
21.6 小結 588
第22章 本地化 591
22.1 system.globalization
名稱空間 591
22.1.1 unicode問題 592
22.1.2 區域性和區域 592
22.1.3 使用區域性 596
22.1.4 排序 600
22.2 資源 602
22.2.1 創建資源文件 602
22.2.2 資源文件生成器 602
22.2.3 resourcewriter 603
22.2.4 使用資源文件 604
22.2.5 system.resources
名稱空間 607
22.3 使用visual studio的
windows窗體本地化 607
22.3.1 通過編程方式修改
區域性 612
22.3.2 使用自定義資源文件 613
22.3.3 資源的自動迴退 614
22.3.4 外包翻譯 615
22.4 用asp.net本地化 615
22.5 用wpf本地化 617
22.5.1 用於wpf的.net資源 618
22.5.2 xaml資源字典 619
22.6 自定義資源讀取器 622
22.6.1 創建databaseresource
reader類 623
22.6.2 創建databaseresource
set類 625
22.6.3 創建databaseresource
manager類 625
22.6.4 databaseresourcereader
的客戶端應用程序 626
22.7 創建自定義區域性 626
22.8 小結 628
第23章 system.transactions 629
23.1 概述 629
23.1.1 事務處理階段 630
23.1.2 acid屬性 630
23.2 數據庫和實體類 631
23.3 傳統的事務 633
23.3.1 ado.net事務 633
23.3.2 system.enterprise
services 634
23.4 system.transactions 635
23.4.1 可提交的事務 636
23.4.2 事務處理的升級 638
23.4.3 依賴事務 640
23.4.4 環境事務 642
23.5 隔離級彆 649
23.6 自定義資源管理器 650
23.7 windows 7和windows
server 2008的事務 656
23.8 小結 660
第24章 網絡 661
24.1 webclient類 661
24.1.1 下載文件 662
24.1.2 基本的webclient示例 662
24.1.3 上傳文件 663
24.2 webrequest類和
webresponse類 664
24.2.1 身份驗證 666
24.2.2 使用代理 666
24.2.3 異步頁麵請求 666
24.3 把輸齣結果顯示為
html頁麵 667
24.3.1 從應用程序中進行
簡單的web瀏覽 667
24.3.2 啓動internet explorer
實例 669
24.3.3 給應用程序提供更多
的ie類型特性 669
24.3.4 使用webbrowser控件
打印 674
24.3.5 顯示請求頁麵的代碼 674
24.3.6 webrequest類
和webresponse類的
層次結構 676
24.4 實用工具類 676
24.4.1 uri 676
24.4.2 ip地址和dns名稱 677
24.5 較低層的協議 679
24.5.1 使用smtpclient 680
24.5.2 使用tcp類 682
24.5.3 tcpsend和tcpreceive
示例 682
24.5.4 tcp和udp 684
24.5.5 udp類 684
24.5.6 socket類 685
24.6 小結 689
第25章 windows服務 691
25.1 windows服務 691
25.2 windows服務的體係結構 692
25.2.1 服務程序 692
25.2.2 服務控製程序 694
25.2.3 服務配置程序 694
25.2.4 windows服務的類 694
25.3 創建windows服務程序 694
25.3.1 創建服務的核心功能 695
25.3.2 quoteclient示例 698
25.3.3 windows服務程序 699
25.3.4 綫程和服務 703
25.3.5 服務的安裝 704
25.3.6 安裝程序 704
25.4 服務的監視和控製 708
25.4.1 mmc管理單元 708
25.4.2 net.exe實用程序 709
25.4.3 sc.exe實用程序 710
25.4.4 visual studio server
explorer 710
25.4.5 編寫自定義
servicecontroller類 710
25.5 故障排除和事件日誌 718
25.6 小結 719
第26章 互操作性 721
26.1 .net和com 721
26.1.1 元數據 722
26.1.2 釋放內存 722
26.1.3 接口 722
26.1.4 方法的綁定 724
26.1.5 數據類型 724
26.1.6 注冊 724
26.1.7 綫程 725
26.1.8 錯誤處理 726
26.1.9 事件 727
26.2 編組 727
26.3 從.net客戶端中使用
com組件 728
26.3.1 創建com組件 728
26.3.2 創建rcw 734
26.3.3 使用rcw 735
26.3.4 使用com服務器和
動態語言擴展 736
26.3.5 綫程問題 737
26.3.6 添加連接點 737
26.4 從com客戶端中使用
.net組件 739
26.4.1 ccm 740
26.4.2 創建.net組件 740
26.4.3 創建類型庫 741
26.4.4 com互操作特性 743
26.4.5 com注冊 745
26.4.6 創建com客戶端
應用程序 746
26.4.7 添加連接點 747
26.4.8 用sink對象創建
客戶端 748
26.5 平颱調用 750
26.6 小結 754
第27章 核心xaml 755
27.1 概述 755
27.1.1 元素映射到.net
對象上 756
27.1.2 使用自定義.net類 757
27.1.3 把特性用作屬性 759
27.1.4 把特性用作元素 759
27.1.5 基本的.net類型 760
27.1.6 集閤 760
27.1.7 構造函數 761
27.2 依賴屬性 761
27.2.1 創建依賴類型 762
27.2.2 強製值迴調 763
27.2.3 值變更迴調和事件 764
27.2.4 事件的冒泡和隧道 764
27.3 附加屬性 767
27.4 標記擴展 770
27.5 創建自定義標記擴展 770
27.6 xaml定義的標記擴展 772
27.7 讀寫xaml 772
27.8 小結 773
第28章 managed extensibility
framework 775
28.1 mef的體係結構 775
28.2 協定 782
28.3 導齣 783
28.3.1 導齣屬性和方法 787
28.3.2 導齣元數據 789
28.4 導入 791
28.5 容器和齣口提供程序 794
28.6 類彆 797
28.7 小結 798
第29章 文件和注冊錶操作 799
29.1 管理文件係統 799
29.1.1 錶示文件和文件夾
的.net類 800
29.1.2 path類 803
29.1.3 fileproperties示例 803
29.2 移動、復製和刪除文件 808
29.2.1 filepropertiesandmovement
示例 808
29.2.2 filepropertiesandmovement
示例的代碼 809
29.3 讀寫文件 812
29.3.1 讀取文件 812
29.3.2 寫入文件 814
29.3.3 流 815
29.3.4 緩存的流 816
29.3.5 使用filestream類讀寫
二進製文件 816
29.3.6 讀寫文本文件 821
29.4 映射內存的文件 827
29.5 讀取驅動器信息 829
29.6 文件的安全性 831
29.6.1 從文件中讀取acl 831
29.6.2 從目錄中讀取acl 832
29.6.3 添加和刪除文件中
的acl項 833
29.7 讀寫注冊錶 835
29.7.1 注冊錶 835
29.7.2 .net注冊錶類 837
29.8 讀寫獨立存儲器 839
29.9 小結 844
第ⅳ部分 數 據
第30章 核心ado.net 847
30.1 ado.net概述 847
30.1.1 名稱空間 848
30.1.2 共享類 848
30.1.3 數據庫專用的類 849
30.2 使用數據庫連接 850
30.2.1 管理連接字符串 851
30.2.2 高效地使用連接 852
30.2.3 事務 854
30.3 命令 855
30.3.1 執行命令 856
30.3.2 調用存儲過程 860
30.4 快速數據訪問:
數據讀取器 862
30.5 管理數據和關係:
dataset類 865
30.5.1 數據錶 866
30.5.2 數據列 866
30.5.3 數據關係 871
30.5.4 數據約束 872
30.6 xml架構:用xsd
生成代碼 875
30.7 填充dataset類 881
30.7.1 用數據適配器填充
dataset 882
30.7.2 從xml中填充
dataset類 883
30.8 持久化dataset類的修改 883
30.8.1 通過數據適配器進行
更新 883
30.8.2 寫入xml輸齣結果 886
30.9 使用ado.net 887
30.9.1 分層開發 887
30.9.2 生成sql server的鍵 888
30.9.3 命名約定 891
30.10 小結 892
第31章 ado.net entity
framework 893
31.1 ado.net entity
framework概述 893
31.2 entity framework映射 894
31.2.1 邏輯層 895
31.2.2 概念層 897
31.2.3 映射層 898
31.3 entity client 899
31.3.1 連接字符串 900
31.3.2 entity sql 900
31.4 實體 901
31.5 對象上下文 904
31.6 關係 906
31.6.1 一個層次結構一個錶 907
31.6.2 一種類型一個錶 908
31.6.3 懶惰加載、延遲加載
和預先加載 909
31.7 對象查詢 910
31.8 更新 913
31.8.1 對象跟蹤 913
31.8.2 改變信息 914
31.8.3 附加和分離實體 916
31.8.4 存儲實體的變化 916
31.9 linq to entities 917
31.10 小結 918
第32章 數據服務 919
32.1 概述 919
32.2 包含clr對象的自定義
宿主 920
32.2.1 clr對象 920
32.2.2 數據模型 922
32.2.3 數據服務 923
32.2.4 駐留服務 923
32.2.5 其他服務操作 924
32.3 http客戶端應用程序 925
32.4 使用wcf數據服務和
ado.net entity
framework 929
32.4.1 asp.net宿主和edm 929
32.4.2 使用system.data
.service.client的.net
應用程序 931
32.5 小結 938
第33章 處理xml 939
33.1 .net支持的xml標準 940
33.2 system.xml名稱空間 940
33.3 使用system.xml類 941
33.4 讀寫流格式的xml 942
33.4.1 使用 xmlreader類 942
33.4.2 使用xmlreader類進行
驗證 946
33.4.3 使用xmlwriter類 947
33.5 在.net中使用dom 949
33.6 使用xpathnavigator類 954
33.6.1 system.xml.xpath
名稱空間 954
33.6.2 system.xml.xsl
名稱空間 959
33.6.3 調試xslt 963
33.7 xml和ado.net 965
33.7.1 將ado.net數據
轉換為xml文檔 965
33.7.2 把xml文檔轉換為
ado.net數據 970
33.8 在xml中序列化對象 972
33.9 linq to xml和.net 982
33.10 使用不同的xml對象 982
33.10.1 xdocument對象 982
33.10.2 xelement對象 983
33.10.3 xnamespace對象 984
33.10.4 xcomment對象 986
33.10.5 xattribute對象 986
33.11 使用linq查詢xml
文檔 987
33.11.1 查詢靜態的xml
文檔 987
33.11.2 查詢動態的xml
文檔 989
33.12 xml文檔的更多查詢
技術 990
33.12.1 讀取xml文檔 990
33.12.2 寫入xml文檔 992
33.13 小結 993
第34章 .net編程和sql
server 995
34.1 .net運行庫的宿主 995
34.2 microsoft.sqlserver.server 997
34.3 用戶定義的類型 998
34.3.1 創建udt 998
34.3.2 通過sql使用udt 1003
34.3.3 從客戶端代碼中使用
udt 1004
34.4 用戶定義的聚閤函數 1005
34.4.1 創建用戶定義的
聚閤函數 1006
34.4.2 使用用戶定義的
聚閤函數 1007
34.5 存儲過程 1007
34.5.1 創建存儲過程 1008
34.5.2 使用存儲過程 1009
34.6 用戶定義的函數 1010
34.6.1 創建用戶定義的函數 1010
34.6.2 使用用戶定義的函數 1010
34.7 觸發器 1011
34.7.1 創建觸發器 1011
34.7.2 使用觸發器 1012
34.8 xml數據類型 1013
34.8.1 包含xml數據的錶 1013
34.8.2 讀取xml值 1014
34.8.3 數據的查詢 1017
34.8.4 xml數據修改語言
(xml dml) 1019
34.8.5 xml索引 1020
34.8.6 強類型化的xml 1021
34.9 小結 1022
第ⅴ部分 顯 示
第35章 核心wpf 1025
35.1 概述 1025
35.1.1 名稱空間 1025
35.1.2 類層次結構 1027
35.2 形狀 1028
35.3 幾何圖形 1030
35.4 變換 1032
35.5 畫筆 1033
35.5.1 solidcolorbrush 1033
35.5.2 lineargradientbrush 1034
35.5.3 radialgradientbrush 1034
35.5.4 drawingbrush 1035
35.5.5 imagebrush 1035
35.5.6 visualbrush 1036
35.6 控件 1037
35.6.1 簡單控件 1037
35.6.2 內容控件 1038
35.6.3 帶標題的內容控件 1039
35.6.4 項控件 1040
35.6.5 帶標題的項控件 1041
35.6.6 修飾 1041
35.7 布局 1042
35.7.1 stackpanel 1042
35.7.2 wrappanel 1043
35.7.3 canvas 1044
35.7.4 dockpanel 1044
35.7.5 grid 1045
35.8 樣式和資源 1046
35.8.1 樣式 1046
35.8.2 資源 1048
35.8.3 係統資源 1049
35.8.4 從代碼中訪問資源 1050
35.8.5 動態資源 1050
35.8.6 資源字典 1051
35.9 觸發器 1052
35.9.1 屬性觸發器 1053
35.9.2 多觸發器 1054
35.9.3 數據觸發器 1055
35.10 模闆 1056
35.10.1 控件模闆 1057
35.10.2 數據模闆 1060
35.10.3 樣式化列錶框 1061
35.10.4 itemtemplate 1062
35.10.5 列錶框元素的控件
模闆 1064
35.11 動畫 1066
35.11.1 時間軸 1066
35.11.2 非綫性動畫 1069
35.11.3 事件觸發器 1069
35.11.4 關鍵幀動畫 1072
35.12 可見狀態管理器 1073
35.13 3-d 1076
35.13.1 模型 1077
35.13.2 照相機 1079
35.13.3 光綫 1079
35.13.4 鏇轉 1079
35.14 小結 1080
第36章 用wpf編寫業務
應用程序 1083
36.1 數據綁定 1083
36.1.1 booksdemo應用程序 1084
36.1.2 用xaml綁定 1086
36.1.3 簡單對象的綁定 1088
36.1.4 更改通知 1090
36.1.5 對象數據提供程序 1092
36.1.6 列錶綁定 1094
36.1.7 主從綁定 1096
36.1.8 多綁定 1097
36.1.9 優先綁定 1099
36.1.10 值的轉換 1100
36.1.11 動態添加列錶項 1102
36.1.12 數據模闆選擇器 1103
36.1.13 綁定到xml上 1105
36.1.14 綁定的驗證 1107
36.2 commanding 1111
36.2.1 定義命令 1112
36.2.2 定義命令源 1113
36.2.3 命令綁定 1113
36.3 treeview 1114
36.4 datagrid 1118
36.4.1 自定義列 1120
36.4.2 行的細節 1121
36.4.3 用datagrid進行分組 1121
36.5 小結 1124
第37章 用wpf創建文檔 1125
37.1 文本元素 1125
37.1.1 字體 1125
37.1.2 texteffect 1127
37.1.3 內聯 1128
37.1.4 塊 1130
37.1.5 列錶 1132
37.1.6 錶 1132
37.1.7 塊的錨定 1134
37.2 流文檔 1135
37.3 固定文檔 1136
37.4 xps文檔 1140
37.5 打印 1141
37.5.1 用printdialog打印 1142
37.5.2 打印可見元素 1142
37.6 小結 1144
第38章 silverlight 1145
38.1 wpf和silverlight的比較 1145
38.2 創建silverlight項目 1146
38.3 導航 1148
38.4 網絡 1152
38.4.1 創建ado.net entity
data model 1153
38.4.2 為silverlight客戶端
創建wcf服務 1153
38.4.3 調用wcf服務 1155
38.4.4 使用wcf數據服務 1158
38.4.5 使用system.net訪問
服務 1160
38.5 瀏覽器集成 1162
38.5.1 調用javascript 1162
38.5.2 javascript調用
silverlight 1163
38.6 在瀏覽器外運行的
silverlight應用程序 1164
38.7 小結 1167
第39章 windows窗體 1169
39.1 創建windows窗體
應用程序 1169
39.2 control類 1175
39.2.1 大小和位置 1175
39.2.2 外觀 1176
39.2.3 用戶交互操作 1176
39.2.4 windows功能 1177
39.2.5 其他功能 1177
39.3 標準控件和組件 1178
39.3.1 button控件 1178
39.3.2 checkbox控件 1178
39.3.3 radiobutton控件 1179
39.3.4 combobox控件、
listbox控件和
checkedlistbox控件 1179
39.3.5 datagridview控件 1180
39.3.6 datetimepicker控件 1188
39.3.7 errorprovider組件 1188
39.3.8 imagelist組件 1189
39.3.9 label控件 1189
39.3.10 listview控件 1189
39.3.11 picturebox控件 1189
39.3.12 progressbar控件 1190
39.3.13 textbox控件、
richtextbox控件與
maskedtextbox控件 1190
39.3.14 panel控件 1191
39.3.15 flowlayoutpanel和
tablelayoutpanel
控件 1191
39.3.16 splitcontainer控件 1192
39.3.17 tabcontrol控件和
tabpages控件 1192
39.3.18 toolstrip控件 1193
39.3.19 menustrip控件 1194
39.3.20 contextmenustrip
控件 1194
39.3.21 toolstripmenuitem
控件 1194
39.3.22 toolstripmanager類 1194
39.3.23 toolstripcontainer
控件 1195
39.4 窗體 1195
39.4.1 form類 1195
39.4.2 多文檔界麵 1199
39.4.3 創建自己的用戶控件 1200
39.5 小結 1200
第40章 核心asp.net 1201
40.1 asp.net概述 1201
40.1.1 asp.net文件的
處理方式 1202
40.1.2 web站點和web
應用程序 1202
40.1.3 asp.net中的狀態
管理 1203
40.2 asp.net web窗體 1203
40.2.1 asp.net代碼模型 1207
40.2.2 asp.net服務器控件 1208
40.3 ado.net和數據綁定 1222
40.3.1 更新事件登記
應用程序 1222
40.3.2 數據綁定的更多內容 1229
40.4 應用程序配置 1234
40.5 小結 1236
第41章 asp.net的功能 1237
41.1 用戶控件和自定義控件 1238
41.1.1 用戶控件 1238
41.1.2 pcsdemosite中的
用戶控件 1242
41.1.3 自定義控件 1243
41.2 母版頁 1247
41.2.1 在web頁麵中
訪問母版頁 1248
41.2.2 嵌套的母版頁 1248
41.2.3 pcsdemosite中
的母版頁 1249
41.3 站點導航 1250
41.3.1 添加站點地圖文件 1251
41.3.2 pcsdemosite中
的導航 1252
41.4 安全性 1253
41.4.1 使用security setup
添加forms身份驗證
功能 1254
41.4.2 實現登錄係統 1255
41.4.3 web 登錄服務器控件 1255
41.4.4 保護目錄 1256
41.4.5 pcsdemosite中的
安全性 1257
41.5 主題 1259
41.5.1 把主題應用於頁麵 1259
41.5.2 定義主題 1260
41.5.3 pcsdemosite中的
主題 1260
41.6 web部件 1263
41.6.1 web部件應用程序
組件 1263
41.6.2 web部件示例 1264
41.7 asp.net ajax 1270
41.8 ajax的概念 1271
41.9 asp.net ajax 1273
41.9.1 核心功能 1273
41.9.2 asp.net ajax
control toolkit 1275
41.10 asp.net ajax網站
示例 1276
41.11 支持asp.net ajax的
網站配置 1278
41.12 添加asp.net ajax
功能 1279
41.12.1 scriptmanager控件 1280
41.12.2 使用updatepanel
控件 1281
41.12.3 使用updateprogress 1283
41.12.4 使用擴展控件 1284
41.13 使用ajax庫 1286
41.13.1 給web頁麵添加
javascript 1286
41.13.2 全局實用程序函數 1287
41.13.3 使用ajax庫
javascript oop
擴展 1287
41.13.4 pagerequestmanager
對象和application
對象 1289
41.13.5 javascript的調試 1292
41.13.6 異步調用web方法 1293
41.13.7 asp.net應用程序
服務 1294
41.14 小結 1294
第42章 asp.net動態數據
和mvc 1297
42.1 路由 1298
42.1.1 查詢字符串參數 1298
42.1.2 定義路由 1300
42.1.3 使用路由參數 1303
42.2 動態數據 1305
42.2.1 創建動態數據網站 1305
42.2.2 定製動態數據網站 1310
42.2.3 進一步開發 1314
42.3 mvc 1314
42.3.1 mvc的含義 1314
42.3.2 asp.net mvc的
含義 1315
42.3.3 簡單的asp.net mvc
應用程序 1315
42.3.4 定製asp.net mvc
應用程序 1321
42.3.5 進一步開發 1329
42.4 小結 1330
第ⅵ部分 通 信
第43章 wcf 1333
43.1 wcf概述 1333
43.1.1 soap 1335
43.1.2 wsdl 1335
43.1.3 rest 1335
43.1.4 json 1336
43.2 簡單的服務和客戶端 1336
43.2.1 服務協定 1337
43.2.2 服務的實現 1338
43.2.3 wcf服務宿主和
wcf測試客戶端 1338
43.2.4 自定義服務宿主 1340
43.2.5 wcf客戶端 1342
43.2.6 診斷 1343
43.3 協定 1345
43.3.1 數據協定 1345
43.3.2 版本問題 1346
43.3.3 服務協定 1346
43.3.4 消息協定 1347
43.4 服務的實現 1348
43.4.1 以編程方式創建
客戶端 1351
43.4.2 錯誤處理 1352
43.5 綁定 1353
43.6 宿主 1356
43.6.1 自定義宿主 1356
43.6.2 was宿主 1357
43.6.3 預配置的宿主類 1357
43.7 客戶端 1358
43.8 雙工通信 1360
43.9 小結 1362
第44章 windows wf 4 1363
44.1 hello world示例 1363
44.2 活動 1365
44.2.1 if活動 1366
44.2.2 invokemethod活動 1367
44.2.3 parallel活動 1367
44.2.4 delay活動 1368
44.2.5 pick活動 1368
44.3 自定義活動 1369
44.3.1 活動的驗證 1370
44.3.2 設計器 1371
44.3.3 自定義復閤活動 1373
44.4 工作流 1375
44.4.1 實參和變量 1376
44.4.2 workflowapplication 1377
44.4.3 workflowservicehost 1381
44.4.4 駐留設計器 1386
44.5 小結 1391
第45章 對等網絡 1393
45.1 p2p網絡概述 1393
45.1.1 客戶端-服務器體係
結構 1393
45.1.2 p2p體係結構 1394
45.1.3 p2p體係結構的挑戰 1395
45.1.4 p2p術語 1396
45.1.5 p2p解決方案 1396
45.2 microsoft windows
peer-to-peer networking 1396
45.2.1 pnrp 1396
45.2.2 people near me 1399
45.3 構建p2p應用程序 1400
45.3.1 system.net.peertopeer 1400
45.3.2 system.net.peertopeer
.collaboration 1405
45.4 小結 1408
第46章 消息隊列 1409
46.1 概述 1409
46.1.1 使用消息隊列的場閤 1410
46.1.2 消息隊列功能 1411
46.2 message queuing産品 1412
46.3 消息隊列體係結構 1412
46.3.1 消息 1413
46.3.2 消息隊列 1413
46.4 message queuing
管理工具 1414
46.4.1 創建消息隊列 1414
46.4.2 消息隊列屬性 1415
46.5 消息隊列的編程實現 1415
46.5.1 創建消息隊列 1415
46.5.2 查找隊列 1416
46.5.3 打開已知隊列 1417
46.5.4 發送消息 1418
46.5.5 接收消息 1421
46.6 課程訂單應用程序 1423
46.6.1 課程訂單類庫 1423
46.6.2 課程訂單消息
發送程序 1424
46.6.3 發送優先級和可恢復
的消息 1425
46.6.4 課程訂單消息接收
程序 1426
46.7 接收結果 1429
46.7.1 確認隊列 1430
46.7.2 響應隊列 1430
46.8 事務隊列 1431
46.9 消息隊列和wcf 1432
46.9.1 帶數據協定的實體類 1432
46.9.2 wcf服務協定 1433
46.9.3 wcf消息接收
應用程序 1434
46.9.4 wcf消息發送
應用程序 1437
46.10 消息隊列的安裝 1438
46.11 小結 1438
第47章 syndication 1441
47.1 system.servicemodel.
syndication名稱空間
概述 1441
47.2 讀取聯閤源的示例 1442
47.3 聯閤源的示例 1444
47.4 小結 1449
第ⅶ部分 附 錄
附錄a 1453
***以下內容見隨書附贈光盤***
第48章 使用gdi+繪圖 e1
48.1 理解繪圖規則 e1
48.1.1 gdi和gdi+ e2
48.1.2 繪製圖形 e3
48.1.3 使用onpaint()方法
繪製圖形 e6
48.1.4 使用剪切區域 e7
48.2 測量坐標和區域 e9
48.2.1 point和pointf結構 e9
48.2.2 size和sizef結構 e10
48.2.3 rectangle和rectanglef
結構 e11
48.2.4 region e12
48.3 調試須知 e13
48.4 繪製可滾動的窗口 e14
48.5 世界、頁麵和設備坐標 e18
48.6 顔色 e19
48.6.1 rgb值 e19
48.6.2 命名顔色 e20
48.6.3 圖形顯示模式和安全
的調色闆 e20
48.6.4 安全調色闆 e21
48.7 畫筆和鋼筆 e21
48.7.1 畫筆 e22
48.7.2 鋼筆 e23
48.8 繪製圖形和綫條 e23
48.9 顯示圖像 e25
48.10 處理圖像時的問題 e27
48.11 繪製文本 e28
48.12 簡單的文本示例 e29
48.13 字體和字體係列 e30
48.14 示例:枚舉字體係列 e31
48.15 編輯文本文檔:
capseditor示例 e33
48.15.1 invalidate()方法 e37
48.15.2 計算項的大小和文檔
的大小 e38
48.15.3 onpaint()方法 e39
48.15.4 坐標轉換 e41
48.15.5 響應用戶的輸入 e42
48.16 打印 e45
48.17 小結 e50
第49章 vsto e51
49.1 vsto概述 e51
49.1.1 項目類型 e52
49.1.2 項目功能 e54
49.2 vsto項目基礎 e55
49.2.1 office對象模型 e55
49.2.2 vsto名稱空間 e55
49.2.3 宿主項和宿主控件 e56
49.2.4 基本的vsto項目
結構 e57
49.2.5 globals類 e60
49.2.6 事件處理 e60
49.3 構建vsto解決方案 e61
49.3.1 管理應用程序級插件 e62
49.3.2 與應用程序和文檔
交互操作 e63
49.3.3 ui的自定義 e64
49.4 示例應用程序 e68
49.5 小結 e78
第50章 maf e79
50.1 maf體係結構 e79
50.1.1 管道 e80
50.1.2 發現 e81
50.1.3 激活和隔離 e82
50.1.4 協定 e83
50.1.5 生命周期 e84
50.1.6 版本問題 e85
50.2 插件示例 e86
50.2.1 插件協定 e86
50.2.2 計算器插件視圖 e87
50.2.3 計算器插件適配器 e88
50.2.4 計算器插件 e90
50.2.5 計算器宿主視圖 e91
50.2.6 計算機宿主適配器 e91
50.2.7 計算器宿主 e93
50.2.8 其他插件 e97
50.3 小結 e97
第51章 enterprise services e99
51.1 使用enterprise services e99
51.1.1 簡史 e100
51.1.2 使用enterprise services
的場閤 e100
51.1.3 重要功能 e101
51.2 創建簡單的com+應用
程序 e103
51.2.1 servicedcomponent類 e103
51.2.2 程序集的屬性 e103
51.2.3 創建組件 e104
51.3 部署 e106
51.3.1 自動部署 e106
51.3.2 手工部署 e106
51.3.3 創建安裝軟件包 e106
51.4 組件服務管理器 e107
51.5 客戶端應用程序 e108
51.6 事務 e109
51.6.1 事務的特性 e109
51.6.2 事務的結果 e110
51.7 示例應用程序 e111
51.7.1 實體類 e111
51.7.2 ordercontrol組件 e113
51.7.3 orderdata組件 e114
51.7.4 orderlinedata組件 e116
51.7.5 客戶端應用程序 e117
51.8 集成wcf和enterprise
services e118
51.8.1 wcf服務外觀 e118
51.8.2 客戶端應用程序 e122
51.9 小結 e123
第52章 目錄服務 e125
52.1 active directory的
體係結構 e126
52.1.1 active directory的
功能 e126
52.1.2 active directory的
概念 e126
52.1.3 active directory數據
的特徵 e129
52.1.4 指定架構 e130
52.2 active directory的
管理工具 e131
52.2.1 active directory users
and computers工具 e131
52.2.2 adsi edit工具 e132
52.3 active directory編程 e133
52.3.1 system.directoryservices
名稱空間中的類 e134
52.3.2 綁定到directory
services e134
52.3.3 獲取目錄項 e138
52.3.4 對象集閤 e140
52.3.5 緩存 e141
52.3.6 創建新對象 e141
52.3.7 更新目錄項 e142
52.3.8 訪問本地adsi對象 e143
52.3.9 在active directory
中搜索 e144
52.4 搜索用戶對象 e148
52.4.1 用戶界麵 e148
52.4.2 獲取架構命名上下文 e149
52.4.3 獲取user類的屬性名 e149
52.4.4 搜索用戶對象 e150
52.5 賬戶管理 e152
52.5.1 顯示用戶信息 e152
52.5.2 創建用戶 e153
52.5.3 重置密碼 e153
52.5.4 創建組 e154
52.5.5 在組中添加用戶 e154
52.5.6 查找用戶 e154
52.6 dsml e155
52.6.1 system.directoryservices.
protocols名稱空間中
的類 e156
52.6.2 用dsml搜索
active directory對象 e156
52.7 小結 e157
第53章 c#、visual basic、
c++/cli和f# e159
53.1 名稱空間 e160
53.2 定義類型 e161
53.2.1 引用類型 e161
53.2.2 值類型 e162
53.2.3 類型推斷 e163
53.2.4 接口 e164
53.2.5 枚舉 e165
53.3 方法 e166
53.3.1 方法的參數和返迴
類型 e166
53.3.2 參數修飾符 e167
53.3.3 構造函數 e168
53.3.4 屬性 e170
53.3.5 對象初始值設定項 e171
53.3.6 擴展方法 e171
53.4 靜態成員 e172
53.5 數組 e173
53.6 控製語句 e174
53.6.1 if語句 e174
53.6.2 條件操作符 e174
53.6.3 switch語句 e175
53.7 循環 e176
53.7.1 for語句 e176
53.7.2 while和do…while
語句 e177
53.7.3 foreach語句 e178
53.8 異常處理 e178
53.9 繼承 e180
53.9.1 訪問修飾符 e180
53.9.2 關鍵字 e181
53.10 資源管理 e183
53.10.1 idisposable接口的
實現 e183
53.10.2 using語句 e184
53.10.3 重寫finalize()方法 e184
53.11 委托 e186
53.12 事件 e188
53.13 泛型 e190
53.14 linq查詢 e192
53.15 c++/cli混閤本地代碼
和托管代碼 e192
53.16 c#的特殊功能 e193
53.17 小結 e194
第54章 .net remoting e195
54.1 使用.net remoting的
原因 e195
54.2 .net remoting術語詳解 e197
54.2.1 客戶端通信 e198
54.2.2 服務器端通信 e199
54.3 上下文 e199
54.3.1 激活 e200
54.3.2 特性和屬性 e200
54.3.3 上下文之間的通信 e201
54.4 遠程對象、客戶端和
服務器 e201
54.4.1 遠程對象 e201
54.4.2 簡單的服務器應用
程序 e202
54.4.3 簡單的客戶端應用
程序 e203
54.5 .net remoting體係結構 e204
54.5.1 信道 e204
54.5.2 格式化程序 e207
54.5.3 channelservices和
remotingconfiguration e207
54.5.4 對象的激活 e209
54.5.5 消息接收器 e212
54.5.6 在遠程方法中傳遞對象 e213
54.5.7 生命周期管理 e216
54.6 配置文件 e218
54.6.1 知名對象的服務器
配置 e220
54.6.2 知名對象的客戶端
配置 e220
54.6.3 客戶端激活的對象的
服務器配置 e221
54.6.4 客戶端激活的對象的
客戶端配置 e222
54.6.5 使用配置文件的
服務器代碼 e222
54.6.6 使用配置文件的
客戶端代碼 e223
54.6.7 客戶端信道的延遲
加載 e223
54.6.8 調試配置 e224
54.6.9 配置文件中的生命
周期服務 e224
54.6.10 格式化程序提供程序 e225
54.7 在asp.net中駐留遠程
服務器 e225
54.8 類、接口和soapsuds e227
54.8.1 接口 e227
54.8.2 soapsuds e227
54.9 異步遠程調用 e228
54.9.1 使用委托和
.net remoting e228
54.9.2 oneway特性 e229
54.10 .net remoting的
安全性 e229
54.11 遠程處理和事件 e230
54.11.1 遠程對象 e231
54.11.2 事件參數 e232
54.11.3 服務器 e233
54.11.4 服務器配置文件 e233
54.11.5 事件接收器 e234
54.11.6 客戶端 e234
54.11.7 客戶端配置文件 e235
54.11.8 運行程序 e236
54.12 調用上下文 e236
54.13 小結 e237
第55章 web服務和asp.net e239
55.1 soap e240
55.2 wsdl e241
55.3 web服務 e242
55.3.1 提供web服務 e242
55.3.2 使用web服務 e246
55.4 擴充事件登記示例 e248
55.4.1 事件登記 web服務 e249
55.4.2 事件登記客戶端 e253
55.5 使用soap標題交換
數據 e256
55.6 小結 e261
第56章 linq to sql e263
56.1 linq to sql和
visual studio 2010 e264
56.1.1 調用products錶 e265
56.1.2 添加linq to sql類 e265
56.1.3 o/r設計器概述 e266
56.1.4 創建product對象 e267
56.2 對象如何映射到linq
對象上 e269
56.2.1 datacontext對象 e270
56.2.2 table[tentity]對象 e274
56.3 脫離o/r設計器工作 e274
56.3.1 創建自己的自定義
對象 e274
56.3.2 通過自定義對象和
linq查詢 e275
56.3.3 通過查詢限製所調用
的列 e276
56.3.4 使用列名 e277
56.3.5 創建自己的
datacontext對象 e278
56.4 自定義對象和o/r
設計器 e279
56.5 查詢數據庫 e280
56.5.1 使用查詢錶達式 e280
56.5.2 查詢錶達式 e281
56.5.3 使用錶達式篩選 e282
56.5.4 執行連接 e282
56.5.5 分組項 e284
56.6 存儲過程 e285
56.7 小結 e286
第57章 wpf 3.0 e287
57.1 hello world示例 e287
57.2 活動 e288
57.2.1 ifelseactivity e289
57.2.2 parallelactivity e290
57.2.3 callexternalmethod
activity e291
57.2.4 delayactivity e291
57.2.5 listenactivity e292
57.2.6 活動執行模型 e293
57.3 自定義活動 e293
57.3.1 活動的驗證 e295
57.3.2 主題和設計器 e296
57.3.3 activitytoolboxitem
和圖標 e297
57.3.4 自定義復閤活動 e299
57.4 工作流 e305
57.4.1 順序工作流 e305
57.4.2 狀態機工作流 e305
57.4.3 給工作流傳遞參數 e307
57.4.4 從工作流中返迴結果 e308
57.4.5 將參數綁定到活動上 e309
57.5 工作流運行庫 e310
57.6 工作流服務 e310
57.6.1 持久性服務 e312
57.6.2 跟蹤服務 e313
57.6.3 自定義服務 e315
57.7 與wcf集成 e316
57.8 駐留工作流 e318
57.9 工作流設計器 e319
57.10 從wf 3.x遷移到wf 4 e320
57.10.1 把活動代碼提取到
服務中 e320
57.10.2 刪除代碼活動 e320
57.10.3 同時運行wf 3.x
和4 e321
57.10.4 考慮把狀態機遷移到
流程圖上 e321
57.11 小結 e321
· · · · · · (
收起)