精通C#3.0與NET3.5高級編程

精通C#3.0與NET3.5高級編程

《精通C#3.0與NET3.5高級編程》是2009年清華大學出版社出版的圖書,作者是丁士鋒、朱毅、楊明羽。

基本介紹

  • 書名:精通C# 3.0與NET 3.5高級編程:LINQ、WCF、WPF、WF
  • 作者:丁士鋒、朱毅、楊明羽
  • ISBN:9787302195528
  • 頁數:782頁
  • 定價:89.00
  • 出版社:清華大學出版社
  • 出版時間:2009年
  • 裝幀:平裝
  • 開本:16開
內容簡介,作者簡介,編輯推薦,特色:,讀者對象:,超值光碟內容:,目錄,第1篇 C#面向對象開發基礎,第2篇 C#中的LINQ開發,第3篇 WPF美輪美奐技術,第4篇 WF工作流編程,第5篇 WCF開發,

內容簡介

《精通C# 3.0與NET 3.5高級編程:LINQ、WCF、WPF、WF》藉助Visual Studio 2008開發工具,詳細介紹了。NET框架中的4大開發利器:LINQ、WPF、WF和WCF。
C#是微軟推出的一種面向對象開發語言,其能讓已有經驗的開發人員輕鬆上手,並在很短的時間內就可以使用C#高效地進行工作。這是讀者選擇C#的原因。目前最新的C#版本就是.NET 3.5框架上的C# 3.0。該書藉助Visual Studio 2008開發工具,詳細介紹了.NET框架中的4大開發利器:LINQ、WPF、WF和WCF。LINQ是集成查詢語言,它在對象和數據之間建立一種對應關係,可以使用訪問記憶體對象的方式查詢數據集合。WPF是C#開發的圖形平台,它改變了傳統Windows程式設計師的開發觀念和開發方式。WF不是一個獨立的工作流應用程式,它提供了一些類庫用於輔助工作流應用程式的開發,並提供了實現工作流應用程式時所需要實現的一些機制,比如持久化、補償、跟蹤機制等。WCF是遠程通訊技術,其傳承了SOA設計的優勢。書中實例具有代表性、編碼規範、講解詳細,可作為特定技術開發人員的指導教程,也可以讓讀者更深入地學習.NET 3.5框架的原理和組成。

作者簡介

丁士鋒,畢業於國防科技大學計算機學院。有多年的大型軟體系統開發經驗,有近8年的.NET軟體項目研發經驗,擅長C#語言,對.NET框架及其底層機制有深入的理解。曾經任職於三星電子、諾基亞等公司,從事軟體項目開發。對企業軟體的設計與架構有深入的研究和大量經驗,主導過多個大型的企業分散式項目的開發。
朱毅,畢業於上海交通大學,獲信息工程、計算機科學雙學士學位。之後又獲得了復旦大學軟體工程碩士學位。有6年多的.NET研發經驗,涉及分散式系統、B/S體系結構系統、C/S體系結構系統的架構和開發。曾任職於西門子移動通信有限公司,擔任項目經理,致力於企業ERP系統的架構。現任職於惠普有限公司ISEE項目組進行項目開發。長期活躍於各大技術社區,曾著有《.NET程式設計師面試指南》一書。業餘時間喜歡閱讀和旅遊。
楊明羽,畢業於浙江大學計算機科學與技術專業,高級軟體工程師。多年來一直從事軟體開發和項目管理類工作,有近10年的軟體開發經驗。擅長C#語言,深入理解.NET框架底層機制,長期追蹤.NET框架的最新技術。曾任職於263線上、阿里巴巴等網路公司。現任職於上海某大型網路科技公司,擔任技術總監一職。

編輯推薦

《精通C# 3.0與NET 3.5高級編程:LINQ、WCF、WPF、WF》從C# 3.0的基礎語法和面向對象編程講起,為初學者鋪墊入門之路。然後重點講解.NET 3.5框架的LINQ、WPF、WF及WCF四大開發技術。
《精通C# 3.0與NET 3.5高級編程:LINQ、WCF、WPF、WF》詳細介紹了LINQ集成化查詢技術,分析了LINQ to ADO.NET、LINQ To XML、LINQ to DataSet及LINQ to SQL 四種最重要的數據查詢技術。
《精通C# 3.0與NET 3.5高級編程:LINQ、WCF、WPF、WF》對WPF技術進行了深入剖析和探索,通過它可以讓基於窗體的應用程式、圖像、視頻、音頻和文檔及基於瀏覽器的網頁有一個統一美觀的UI。
《精通C# 3.0與NET 3.5高級編程:LINQ、WCF、WPF、WF》通過一個OA系統最常用的工作流程審核系統,深入分析了WF工作流定製技術的套用。
《精通C# 3.0與NET 3.5高級編程:LINQ、WCF、WPF、WF》深入透析了微軟為SOA套用解決方案提供的WCF技術,並分析了通道模型、訊息處理機制等跨領域信息互動技術。
《精通C# 3.0與NET 3.5高級編程:LINQ、WCF、WPF、WF》提供的示例和案例面向實際開發,意在加深讀者對書中內容的理解,並提高讀者的項目開發水平。
《精通C# 3.0與NET 3.5高級編程:LINQ、WCF、WPF、WF》提供了大量的圖示幫助讀者理解.NET 3.5框架,並對學習中經常遇到的問題,給出了大量技巧、注意和說明,幫助讀者少走彎路。

特色:

徹底顛覆傳統窗體開發的瓶頸和弊端,用WPF實現全新的圖形界面引擎
詳解WPF的布局、XAML語言、模板、幾何圖形、畫刷及數據綁定等技術
統一了Windows創建、顯示和操作文檔、媒體及用戶界面UI的方式
詳解最簡單、最完善的工作流定製技術WF,輕鬆實現OA系統的流程規劃
理清SOA與WCF的概念及設計思想,深入透析WCF分散式處理技術
提供500多個示例、4個綜合案例,全面提升讀者的開發水平

讀者對象:

需要全面學習.NET 3.5最新技術的程式設計師
C# 3.0初、中級學習人員
想要開發絢麗的WinForm窗體應用程式的人員
使用WPF進行應用程式開發的人員
需要學習LINQ集成查詢技術的人員
進行OA系統開發的程式設計師
使用WCF進行遠程通信的開發人員
需要深入理解.NET框架的開發人員

超值光碟內容:

微軟Visual Studio 2008學習版安裝光碟
《精通C# 3.0與NET 3.5高級編程:LINQ、WCF、WPF、WF》所涉及的原始碼
6小時多媒體視頻講解
隨書附贈微軟Visual Studio 2008學習版安裝光碟
6小時多媒體視頻講解
資深.NET程式設計師,全新視角,解讀.NET 3.5框架的最新技術趨勢
深入剖析.NET 3.5框架的四大開發技術及.NET 3.5框架的底層機制
本叢書5種榮獲“全國優秀暢銷書獎”(科技類),本叢書累計銷售超過100萬冊,本叢書先後被400餘所培訓機構選作參考書。

目錄

第1篇 C#面向對象開發基礎

第1章 .NET框架和Visual Studio 2008 開發工具 2
1.1 .NET 3.5框架一覽 2
1.1.1 框架包含的開發語言 2
1.1.2 C#開發語言的特點 3
1.1.3 C#的運行機制 3
1.1.4 C#的類庫框架 4
1.2 Visual Studio 2008 開發界面 4
1.2.1 Visual Studio 2008界面一覽 5
1.2.2 選單欄 5
1.2.3 工具列 6
1.2.4 工具箱 7
1.2.5 屬性視窗 7
1.2.6 解決方案資源管理器 7
1.2.7 伺服器資源管理器 8
1.3 創建C#應用程式 9
1.3.1 控制台應用程式(Console) 9
1.3.2 Windows 應用程式(Forms) 10
1.3.3 ASP.NET 3.5網站 11
1.4 小結 12
第2章 C#的語法知識 13
2.1 變數、常量和表達式 13
2.1.1 常量 13
2.1.2 變數 13
2.1.3 變數的類型 14
2.1.4 類型轉換 14
2.1.5 變數的作用域和生存周期 15
2.1.6 表達式 15
2.2 運算符 16
2.2.1 算術運算符 16
2.2.2 關係運算符和邏輯運算符 16
2.2.3 賦值運算符 17
2.2.4 ?運算符 17
2.2.5 運算符優先權 17
2.3 流程控制語句 18
2.3.1 if語句 18
2.3.2 switch語句 18
2.3.3 for語句 20
2.3.4 foreach語句 20
2.3.5 while語句 21
2.4 方法和函式 21
2.4.1 方法和函式的定義 21
2.4.2 函式的參數 22
2.4.3 函式的返回值 22
2.4.4 函式的重載 22
2.4.5 委託 23
2.5 泛型 23
2.5.1 什麼是泛型 23
2.5.2 泛型的套用範圍 24
2.6 小結 24
第3章 C#的面向對象特性 25
3.1 面向對象編程概述 25
3.1.1 什麼是類和對象 25
3.1.2 用C#如何創建類 26
3.1.3 用C#如何創建對象 27
3.1.4 什麼是面向對象編程 27
3.2 面向對象的技術 28
3.2.1 接口 28
3.2.2 用C#如何創建接口 28
3.2.3 繼承 29
3.2.4 用C#如何實現繼承 29
3.2.5 多態 30
3.2.6 用C#如何實現多態 31
3.3 面向對象開發的簡單實例 31
3.3.1 面向對象功能設計 31
3.3.2 面向對象的類設計 32
3.3.3 面向對象的套用 32
3.4 小結 34

第2篇 C#中的LINQ開發

第4章 LINQ查詢基礎 36
4.1 LINQ基礎概念 36
4.1.1 什麼是LINQ 36
4.1.2 如何使用LINQ 37
4.1.3 LINQ查詢 38
4.2 LINQ查詢表達式 39
4.2.1 查詢表達式 39
4.2.2 用from子句指定數據源 40
4.2.3 用select子句指定目標數據 41
4.2.4 用where子句指定篩選條件 44
4.2.5 用orderby子句進行排序 46
4.2.6 用group子句進行分組 48
4.2.7 用from子句進行複合查詢 50
4.2.8 用join子句進行聯接 52
4.2.9 用join子句進行內部聯接 52
4.2.10 用join子句進行分組聯接 53
4.2.11 用join子句進行左外部聯接 54
4.3 LINQ查詢方法 55
4.3.1 IEnumerable接口 55
4.3.2 Lambda表達式 57
4.3.3 用Where()方法進行篩選 58
4.3.4 用OrderBy()方法進行排序 60
4.3.5 用Skip()、SkipWhile()跳過元素 62
4.3.6 用Take()、TakeWhile()提取元素 63
4.3.7 用Max()等對元素進行數值計算 64
4.3.8 用Distinct()消除集合中相等的元素 66
4.3.9 用Concat()連線兩個集合 68
4.3.10 用Union()等進行集合操作 69
4.4 小結 71
第5章 LINQ to ADO.NET——支持LINQ 語言與ADO.NET的互動 72
5.1 LINQ to ADO.NET概述 72
5.1.1 LINQ to DataSet概述 72
5.1.2 LINQ to SQL概述 73
5.2 LINQ to DataSet——實現複雜數據查詢 74
5.2.1 使用LINQ to DataSet 74
5.2.2 查詢單個數據表 75
5.2.3 查詢多個數據表 78
5.2.4 用查詢創建數據表 81
5.2.5 修改表中欄位數據 83
5.2.6 使用數據視圖DataView 84
5.3 LINQ to SQL——對象模型 87
5.3.1 對象模型的原理 87
5.3.2 生成對象關係設計器 88
5.3.3 對象關係設計器的構成 90
5.3.4 深入LINQ to SQL類 91
5.3.5 通過綁定瀏覽資料庫記錄 93
5.3.6 用LINQ查詢LINQ to SQL類 95
5.3.7 修改資料庫記錄 96
5.4 小結 98
第6章 LINQ To XML——支持LINQ語言與 XML語言的互動 99
6.1 LINQ to XML概述 99
6.1.1 什麼是LINQ to XML 99
6.1.2 LINQ to XML與DOM 101
6.2 構造XML樹 102
6.2.1 構造簡單的XML元素 102
6.2.2 構造具有屬性的XML元素 104
6.2.3 構造具有子元素的XML元素 107
6.2.4 用XElement類構造XML樹 108
6.3 查詢XML樹 109
6.3.1 查找具有特定屬性的元素 109
6.3.2 查找具有特定子元素的元素 111
6.3.3 對XML元素進行排序 112
6.3.4 基於上下文查詢元素 113
6.4 操作XML樹 115
6.4.1 載入和保存XML樹 115
6.4.2 添加元素到XML樹 116
6.4.3 移除XML樹的元素和屬性 118
6.5 小結 122

第3篇 WPF美輪美奐技術

第7章 WPF編程入門 126
7.1 WPF概述 126
7.1.1 理解Windows圖形系統 126
7.1.2 WPF的功能特點 127
7.1.3 WPF架構簡介 127
7.1.4 WPF的類層次結構 128
7.2 WPF開發工具簡介 130
7.2.1 Visual Studio 2008開發工具 130
7.2.2 Microsoft Expression Blend設計工具 131
7.2.3 XAMLPad標記文本查看器 132
7.2.4 ZAM 3D第三方工具(3D模型) 133
7.3 第一個WPF應用程式 133
7.4 WPF應用程式結構 135
7.5 WPF與.NET Framework 3.5平台 135
7.5.1 Windows Communication Foundation概述 136
7.5.2 Windows CardSpace概述 137
7.5.3 Windows Workflow Foundation 概述 137
7.6 小結 138
第8章 XAML標記語言 139
8.1 理解XAML 139
8.1.1 XAML是什麼 139
8.1.2 用C#模擬XAML實現的內容 141
8.1.3 XAML的種類 143
8.2 XAML基礎 143
8.2.1 命名空間 144
8.2.2 代碼後置檔案 146
8.2.3 使用簡單的屬性和類型轉換器 149
8.2.4 屬性語法與屬性元素語法 150
8.2.5 標記擴展特性 152
8.2.6 附加屬性 153
8.2.7 特定的字元和空白 155
8.2.8 在XAML中使用事件 157
8.2.9 使用其他命名空間中的類型 158
8.2.10 載入和編譯XAML 160
8.3 小結 164
第9章 Application全局應用程式類 166
9.1 應用程式生命周期 166
9.1.1 創建Application對象 166
9.1.2 創建一個自定義的Application類 168
9.1.3 關閉應用程式 169
9.1.4 應用程式事件 170
9.2 事件執行周期 171
9.2.1 Startup應用程式啟動事件 171
9.2.2 Activated和Deactiveated事件——激活與取消激活 172
9.2.3 DispatherUnhandledException事件——處理應用程式未處理的異常 173
9.2.4 SessionEnding事件——註銷或關閉系統 174
9.2.5 Exit事件——退出應用程式 175
9.3 Application類的任務 177
9.3.1 處理命令行參數 177
9.3.2 訪問當前的應用程式 178
9.3.3 單實例應用程式 181
9.4 小結 185
第10章 WPF布局 187
10.1 理解WPF布局 187
10.1.1 WPF的布局原理 187
10.1.2 布局的過程 188
10.1.3 布局容器 188
10.2 使用StackPanel進行簡單地布局 189
10.2.1 StackPanel示例 189
10.2.2 StackPanel布局屬性 191
10.3 使用WrapPanel和DockPanel 193
10.3.1 使用WrapPanel控制項布局 193
10.3.2 使用DockPanel控制項布局 194
10.3.3 簡單對話框的實現 196
10.4 Grid控制項 198
10.4.1 創建Grid控制項 198
10.4.2 調整行列尺寸 199
10.4.3 編程創建Grid控制項 201
10.4.4 合併行和列 203
10.4.5 窗體分割 205
10.4.6 共享尺寸組 208
10.4.7 使用UniformGrid控制項 212
10.5 基於坐標布局的Canvas 212
10.5.1 Canvas控制項的使用方法 213
10.5.2 Canvas的Z軸 214
10.5.3 InkCanvas介紹 214
10.6 小結 217
第11章 內容控制項 218
11.1 理解內容控制項 218
11.1.1 什麼是內容控制項 218
11.1.2 Content屬性介紹 220
11.1.3 內容的對齊屬性 222
11.2 內容容器控制項 223
11.2.1 ScrollViewer滾動條控制項 223
11.2.2 GroupBox組合框和TabItem標籤頁控制項 227
11.2.3 Expander可摺疊控制項 229
11.3 裝飾控制項 232
11.3.1 Border框線控制項 232
11.3.2 Viewbox自動縮放控制項 233
11.4 小結 235
第12章 WPF依賴屬性和事件路由 236
12.1 WPF中的樹 236
12.1.1 邏輯樹和視覺樹 236
12.1.2 編程遍歷樹結構 238
12.2 理解依賴屬性 239
12.2.1 依賴屬性的概念 240
12.2.2 定義依賴屬性 242
12.2.3 依賴屬性示例 244
12.2.4 共享依賴屬性 248
12.2.5 註冊附加屬性 249
12.3 理解事件路由 250
12.3.1 路由事件的概念 250
12.3.2 定義和註冊路由事件 253
12.3.3 事件路由策略 254
12.3.4 RoutedEventArgs類型的參數 257
12.3.5 附加事件 258
12.4 WPF中的事件 259
12.4.1 生命周期事件 259
12.4.2 鍵盤事件 261
12.4.3 鍵盤焦點 264
12.4.4 鍵盤狀態 265
12.4.5 滑鼠事件 266
12.4.6 捕捉滑鼠 270
12.4.7 滑鼠拖放編程 272
12.4.8 檔案拖放示例 275
12.5 小結 277
第13章 標準控制項 278
13.1 控制項基礎 278
13.1.1 背景色和前景色畫刷 278
13.1.2 透明度設定 280
13.1.3 更改字型 281
13.1.4 更改滑鼠游標 282
13.2 內容控制項 286
13.2.1 Label標籤控制項 286
13.2.2 Button控制項 287
13.2.3 CheckBox和RadioButton控制項 290
13.2.4 ToolTip提示控制項 291
13.2.5 使用ToolTipService對象ToolTip 293
13.2.6 使用Popup控制項 295
13.3 文本控制項 298
13.3.1 TextBox控制項 299
13.3.2 選擇文本 300
13.3.3 PasswordBox密碼框控制項 301
13.3.4 TextBlock控制項 303
13.4 列表控制項 305
13.4.1 ListBox列表框控制項 305
13.4.2 獲取ListBox選定項 307
13.4.3 在ListBox中進行多選 309
13.4.4 ComboBox下拉列表框控制項 310
13.5 範圍控制項 313
13.5.1 ProgressBar進度條控制項 313
13.5.2 Slider滑動條控制項 314
13.6 小結 317
第14章 視窗與導航 318
14.1 Windows類簡介 318
14.1.1 Window類的基本屬性 319
14.1.2 視窗的生命周期 322
14.1.3 模式與非模式視窗 324
14.1.4 視窗的定位和尺寸 325
14.1.5 保存和恢復視窗位置 326
14.2 對話框視窗 327
14.2.1 視窗的宿主 327
14.2.2 對話框模型 328
14.2.3 MessageBox訊息框 330
14.2.4 通用對話框 331
14.3 非矩形視窗 333
14.3.1 圓角視窗 334
14.3.2 圖形視窗 335
14.3.3 調整非矩形視窗尺寸 337
14.4 一個簡單的導航應用程式示例 338
14.5 基於頁面的用戶界面 340
14.5.1 Page類簡介 340
14.5.2 使用Hyperlink超級連結 341
14.5.3 片段導航 342
14.5.4 NavigationWindow導航視窗 343
14.5.5 Frame頁面框架 344
14.5.6 導航歷史記錄 347
14.6 NavigationService導航服務 348
14.6.1 編程控制導航 348
14.6.2 導航生命期事件 350
14.6.3 導航記錄管理 353
14.6.4 使用頁函式PageFunction 357
14.7 XAML瀏覽器應用程式 360
14.7.1 XBAP的特點 361
14.7.2 創建XBAP應用程式 361
14.8 小結 362
第15章 WPF資源、樣式和控制項模板 363
15.1 程式集資源 363
15.1.1 添加資源 363
15.1.2 獲取程式集資源 364
15.2 對象資源 365
15.2.1 資源集合 366
15.2.2 靜態和動態資源 368
15.2.3 非共享資源 368
15.2.4 編程訪問資源 369
15.2.5 應用程式資源 369
15.2.6 系統資源 370
15.2.7 使用資源字典組織資源 371
15.3 樣式基礎 372
15.3.1 創建一個樣式對象 373
15.3.2 在樣式中設定屬性 374
15.3.3 根據指定的類型自動套用樣式 375
15.3.4 多級樣式 376
15.3.5 綁定事件處理器 377
15.4 樣式觸發器 378
15.4.1 創建簡單觸發器 378
15.4.2 創建事件觸發器 381
15.4.3 數據觸發器 381
15.5 控制項模板 383
15.5.1 理解控制項模板 384
15.5.2 一個按鈕模板示例 384
15.5.3 模板的綁定 386
15.5.4 模板觸發器 387
15.6 小結 389
第16章 形狀、變換和畫刷 390
16.1 WPF圖形 390
16.1.1 Shape類 390
16.1.2 Rectangle和Ellipse類 391
16.1.3 Stretch屬性 392
16.1.4 Line直線對象 393
16.1.5 Polyline多段線對象 394
16.1.6 Polygon多邊形對象 395
16.1.7 線帽和線連線點 397
16.1.8 繪製虛線 398
16.2 畫刷 399
16.2.1 LinearGradientBrush線性漸變畫刷 399
16.2.2 RadialGradientBrush徑向漸變畫刷 401
16.2.3 ImageBrush圖像畫刷 402
16.2.4 VisualBrush可視化對象畫刷 404
16.2.5 OpacityMask不透明蒙板 405
16.3 WPF變換 407
16.3.1 套用變換 408
16.3.2 TranslateTransform移動變換 409
16.3.3 RotateTransform旋轉變換 409
16.3.4 ScaleTransform縮放變換 410
16.3.5 SkewTransform扭曲變換 411
16.3.6 TransformGroup組合變換 412
16.4 點陣圖效果 413
16.4.1 模糊 414
16.4.2 凹凸效果 415
16.4.3 浮雕效果 416
16.4.4 發光和陰影 417
16.5 小結 418
第17章 幾何圖形、圖像和可視化層 419
17.1 路徑和幾何圖形 419
17.1.1 線型、矩形和橢圓幾何圖形 419
17.1.2 使用GeometryGroup組合形狀 420
17.1.3 使用CombinedGeometry結合形狀 422
17.1.4 認識PathGeometry對象 423
17.1.5 用PathGeometry對象繪製直線 424
17.1.6 用PathGeometry對象繪製弧線 424
17.1.7 用PathGeometry對象繪製貝塞爾曲線 425
17.1.8 使用幾何迷你語言 426
17.1.9 幾何圖形的裁切 427
17.2 繪圖 428
17.2.1 繪製形狀 428
17.2.2 繪製圖像 430
17.2.3 組合繪製 430
17.3 可視化層 431
17.3.1 在Visual上繪圖 432
17.3.2 DrawingVisual宿主容器 433
17.3.3 使用命中測試 435
17.4 小結 437
第18章 WPF數據綁定 438
18.1 數據綁定基礎 438
18.1.1 綁定到元素屬性 438
18.1.2 使用程式代碼創建綁定 439
18.1.3 綁定多個屬性 440
18.1.4 綁定的方向 441
18.1.5 綁定更新 443
18.1.6 綁定到非元素的對象 444
18.2 資料庫綁定 448
18.2.1 創建數據訪問組件 448
18.2.2 實現數據實體對象 450
18.2.3 顯示綁定對象 450
18.2.4 更新資料庫 452
18.3 小結 454

第4篇 WF工作流編程

第19章 WF編程入門 456
19.1 WF基礎 456
19.1.1 WF簡介 456
19.1.2 WF的開發環境 458
19.1.3 第一個工作流示例程式 459
19.1.4 WF架構簡介 463
19.2 使用WorkflowRuntime和WorkflowInstance類 464
19.2.1 理解WorkflowRuntime工作流引擎 464
19.2.2 理解WorkflowInstance工作流實例 467
19.3 工作流類型和創建模式 469
19.3.1 WF工作流的類型 469
19.3.2 一個簡單的狀態機工作流示例 469
19.3.3 WF工作流的創建模式 471
19.4 小結 472
第20章 WF活動 473
20.1 理解WF活動 473
20.1.1 活動的類層次結構 473
20.1.2 活動條件類型 474
20.2 使用WF的基本活動 476
20.2.1 使用IfElseActivity活動 477
20.2.2 使用WhileActivity活動 478
20.2.3 使用ParalleActivity活動 479
20.2.4 使用ReplicatorActivity活動 482
20.2.5 使用ConditionedActivityGroup活動 485
20.2.6 使用InvokeWorkflowActivity活動 488
20.2.7 使用TerminateActivity活動 491
20.2.8 使用SuspendActivity活動 491
20.3 本地服務和事件驅動的活動 493
20.3.1 理解和實現本地服務 494
20.3.2 使用本地服務在宿主和工作流之間通信 495
20.3.3 事件驅動的活動簡介 498
20.3.4 EventDrivenActivity和ListenActivity使用示例 499
20.3.5 使用EventHandlingScopeActivity活動 502
20.4 小結 507
第21章 WF服務 508
21.1 WF服務基礎 508
21.1.1 WF服務的分類 508
21.1.2 默認的服務類簡介 509
21.2 WF持久化服務 510
21.2.1 準備資料庫 510
21.2.2 創建工作流 511
21.2.3 使用SqlWorkflowPersistenceService 513
21.3 WF跟蹤服務 519
21.3.1 使用工作流跟蹤服務 519
21.3.2 跟蹤服務配置檔案 523
21.4 小結 524
第22章 基於ASP.NET的工作流批核系統 525
22.1 工作流批核系統簡介 525
22.1.1 系統運行效果 525
22.1.2 系統基本結構 528
22.2 Workflows工作流項目 529
22.2.1 基於事件驅動的活動實現 529
22.2.2 UserActivity用戶活動實現 531
22.2.3 SaveWorkItems自定義活動實現 537
22.2.4 ApprovedWorkItemWorkflow工作流實例的實現 538
22.2.5 工作流項目幫助類的實現 541
22.3 ASP.NET宿主應用程式項目 542
22.3.1 初始化工作流運行時引擎 543
22.3.2 創建工作流實例 544
22.3.3 編輯和審核工作申請表單 546
22.4 小結 549

第5篇 WCF開發

第23章 SOA和WCF基礎介紹 552
23.1 SOA架構介紹 552
23.1.1 軟體設計思想發展的簡要介紹 552
23.1.2 什麼是SOA 553
23.2 WCF簡要介紹 554
23.2.1 什麼是WCF 554
23.2.2 WCF體系框架 555
23.2.3 WCF基礎概念介紹 557
23.3 第一個WCF程式 559
23.3.1 HelloWorld服務契約的定義 559
23.3.2 HelloWorld的宿主程式 561
23.3.3 訪問HelloWorld服務的客戶端程式 563
23.4 小結 565
第24章 通道模型和綁定 566
24.1 WCF通道模型 566
24.1.1 WCF通道模型概述 566
24.1.2 訊息交換模式和通道形狀 567
24.1.3 數據報模式 567
24.1.4 請求-回響模式 570
24.1.5 雙工模式 573
24.1.6 帶會話的數據報模式、請求-回響模式和雙工模式 574
24.1.7 通道形狀的改變 575
24.1.8 通道性狀和上層服務協定 576
24.1.9 通道管理器 577
24.1.10 ICommunicationObject接口和狀態改變 577
24.2 標準綁定介紹 581
24.2.1 綁定的基本概念 581
24.2.2 標準綁定 581
24.2.3 設定綁定的方式 582
24.2.4 如何選擇綁定 583
24.3 本機WCF-WCF互動的綁定和地址 585
24.3.1 場景概述 585
24.3.2 IPC基本概念 585
24.3.3 使用netNamedPipeBinding 586
24.3.4 netNamedPipeBinding的地址和配置 587
24.3.5 netNamedPipeBinding特點總結 589
24.4 跨主機WCF-WCF互動的綁定和地址 589
24.4.1 場景概述 590
24.4.2 TCP協定概述 590
24.4.3 Net.Tcp連線埠共享 591
24.4.4 使用netTcpBinding 591
24.4.5 netTcpBinding的地址和配置 592
24.4.6 netTcpBinding特點總結 595
24.5 與WS-I Basic Web服務進行互動的綁定和地址 595
24.5.1 場景概述 595
24.5.2 SOAP協定概述 596
24.5.3 使用basicHttpBinding 597
24.5.4 basicHttpBinding的地址和配置 598
24.5.5 basicHttpBinding特點總結 600
24.6 與改進Web服務進行互動的綁定和地址 600
24.6.1 場景概述 601
24.6.2 改進Web服務協定概述 601
24.6.3 使用wsHttpBinding 606
24.6.4 wsHttpBinding的地址和配置 607
24.6.5 wsHttpBinding特點總結 609
24.6.6 使用wsDualHttpBinding 610
24.6.7 wsDualHttpBinding的地址和配置 611
24.6.8 wsDualHttpBinding特點總結 613
24.6.9 使用ws2007HttpBinding 613
24.7 使用脫機模式進行訊息互動的綁定和地址 613
24.7.1 場景概述 614
24.7.2 MSMQ協定概述 614
24.7.3 使用netMsmqBinding 615
24.7.4 netMsmqBinding的地址和配置 616
24.7.5 netMsmqBinding特點總結 619
24.7.6 使用msmqIntegrationBinding 619
24.7.7 msmqIntegrationBinding的地址和配置 620
24.7.8 msmqIntegrationBinding特點總結 622
24.8 小結 623
第25章 定義服務:契約編程 624
25.1 契約定義和分類 624
25.1.1 什麼是契約 624
25.1.2 契約分類 624
25.2 服務契約 625
25.2.1 服務契約和WSDL 625
25.2.2 服務契約的重載問題 627
25.2.3 定義請求-回響操作 629
25.2.4 定義單程操作 630
25.2.5 定義雙程操作 632
25.2.6 WCF中事件的實現 640
25.3 數據契約 644
25.3.1 數據契約和XSD 644
25.3.2 使用DataContract特性定義數據契約 646
25.3.3 數據契約的繼承 649
25.3.4 已知類型的定義 650
25.3.5 數據契約的等效性 655
25.3.6 數據契約的版本控制 658
25.3.7 定義必需的數據成員 660
25.3.8 數據默認值的傳送 662
25.3.9 數組和集合的處理 663
25.4 訊息契約 667
25.4.1 訊息契約基本概念 667
25.4.2 強類型訊息 668
25.4.3 弱類型訊息 674
25.5 錯誤處理和錯誤契約 678
25.5.1 SOAP訊息的錯誤處理 678
25.5.2 服務端未捕獲的異常 679
25.5.3 包含詳細異常信息 681
25.5.4 捕捉服務異常 682
25.5.5 FaultCode和FaultReason的使用 684
25.5.6 使用錯誤契約和FaultException 685
25.6 小結 688
第26章 WCF中的行為 689
26.1 實例管理 689
26.1.1 實例管理的設定 689
26.1.2 PerCall實例策略 690
26.1.3 PerSession實例策略和會話 692
26.1.4 Single實例策略 695
26.2 並發管理 698
26.2.1 並發管理的設定 698
26.2.2 Single併發模式 699
26.2.3 Multiple併發模式 701
26.2.4 Reentrant併發模式 703
26.3 元數據的發布 706
26.3.1 HTTP-GET方式發布元數據 706
26.3.2 MEX終節點方式發布元數據 708
26.4 事務管理 710
26.4.1 事務的基本概念和特性 710
26.4.2 單服務事務 710
26.4.3 分散式事務 715
26.4.4 事務協定和事務管理器 721
26.5 小結 723
第27章 安全 724
27.1 常用概念介紹 724
27.1.1 身份驗證 724
27.1.2 授權 725
27.1.3 保密性 725
27.1.4 完整性 725
27.1.5 憑據 725
27.2 傳輸安全性 726
27.2.1 傳輸安全性的三要素 726
27.2.2 WCF支持的傳輸安全模式 726
27.2.3 傳輸安全模式的配置 727
27.2.4 Transport安全模式下的憑證 728
27.2.5 Message安全模式下的憑證 729
27.3 區域網路內Windows平台系統的安全性 729
27.3.1 場景分析 729
27.3.2 服務定義 730
27.3.3 身份認證 732
27.3.4 授權 734
27.4 跨Internet系統的安全性 738
27.4.1 場景概述和綁定選擇 738
27.4.2 訊息安全 739
27.4.3 身份認證 742
27.4.4 授權 744
27.5 安全機制的日誌和跟蹤 745
27.6 小結 746
第28章 自動點滴管理系統 747
28.1 需求分析 747
28.1.1 系統介紹 747
28.1.2 客戶端功能 747
28.1.3 服務端功能 748
28.2 系統設計 748
28.2.1 服務邊界和接口 748
28.2.2 傳輸和寄宿的設計 749
28.2.3 界面的設計 749
28.3 系統實現 750
28.3.1 服務契約的定義 750
28.3.2 數據契約的定義 751
28.3.3 服務的實現 756
28.3.4 控制台實現 762
28.3.5 客戶端實現 770
28.4 運行和測試 778
28.5 小結 778

相關詞條

熱門詞條

聯絡我們