WCF揭秘

WCF揭秘

《WCF揭秘》是WCF領域內少有的經典著作,以WCF的預備知識開篇,最後以REST和PlainXML服務的具體案例分析結束全書,全面而深入地講解了WCF技術的各個知識點,在廣度和深度上都恰到好處。

基本信息

WCF揭秘

編輯推薦

*來自微軟WCF開發團隊的權威之作;

*從這裡,開始.NET企業級開發之旅;

*實戰性極強的80多個經典示例。

“WCF開發團隊中的每一位項目經理和開發人員都有這本書——我們幾乎所有人都把這本書作為開發或Web服務的必備參考書。你一定會像我們一樣,發現這是一本令人愉快、有啟發性而且很有用的書。”

——Alex Weinert,微軟公司WCF開發團隊項目經理

“要學習WCF,你只要這本書和WCF SDK!它幾乎講解了對於WCF開發者來說最重要的所有主題,而且非常易於理解。強烈推薦!”

WCF是微軟為構建基於Web服務、SOA架構和分散式應用程式所提供的全新統一編程模型,具有強大的互操作性、可擴展性和可管理性,是微軟分散式計算的集大成之作,大大簡化了.NET平台企業級套用開發。

本書由4位微軟WCF開發團隊的技術專家撰寫,是公認的權威著作,通過大量套用場景,深入地講解了WCF開發者必須學習的所有知識。書中提供了大量步驟詳盡的示例,讀者可以從無到有重現解決方案,直接運用到實際項目中去。書中萃取了大量最佳實踐和寶貴建議,是整個WCF開發團隊集體智慧的結晶,彌足珍貴。

作者簡介

本書的四位作者都是微軟公司WCF開發團隊成員,負責向社區傳播並幫助客戶成功實踐最新的WCF技術。他們能夠在第一時間獲得第一手資料,自然對這項技術有著其他人不具備的深入理解。更重要的是,他們花了大量時間來幫助企業和軟體提供商使用WCF,在應對各種難題時都遊刃有餘。更值得慶幸的是,作者將這些寶貴的經驗都融入到了本書中。

目錄

第一部分 WCF簡介

第1章 預備知識 2

1.1 簡介 2

1.2分部類型 2

1.3 泛型 3

1.4 可空值類型 5

1.5 輕量級事務管理器 6

1.6 角色提供程式 8

1.7 小結 9

1.8 參考文獻 10

第2章 基礎知識 11

2.1 背景知識 11

2.2 服務模型 16

2.2.1 軟體資源 19

2.2.2 創建一個訪問資源的服務 21

2.3 小結 51

2.4 參考文獻 51

第3章 數據表示 52

3.1 背景知識 52

3.2 XmlSerializer和DataContractSerializer 53

3.3 XML物神 57

3.3.1 創建服務 58

3.3.2 創建客戶端 59

3.4 使用DataContractSerializer 60

3.5 異常處理 72

3.6 小結 76

3.7 參考文獻 76

第4章 會話、可信賴會話、佇列與事務 77

4.1 簡介 77

4.2 可信賴會話 77

4.3 會話管理 80

4.4 佇列交付 81

4.5 事務 84

4.6 小結 91

第二部分 WF介紹

第5章 WF簡介 94

5.1 簡介 94

5.1.1 WF是什麼 94

5.1.2 WF不是什麼 94

5.2 活動 95

5.2.1 開箱即用活動 96

5.2.2 創建定製服務 97

5.2.3 活動通信 102

5.2.4 設計行為 107

5.2.5 事務和補償 108

5.3 工作流模型 110

5.3.1 順序工作流 110

5.3.2 狀態機工作流 116

5.3.3 定製根活動 117

5.4 工作流承載 117

5.4.1 承載運行時 118

5.4.2 運行時服務 119

5.4.3 定製服務 126

5.5規則引擎128

5.5.1 作為條件的規則 128

5.5.2 ConditionedActivityGroup活動 130

5.5.3 作為策略的規則 131

5.6 小結 133

5.7 參考文獻 133

第6章 使用WCF和WF 134

6.1 簡介 134

6.2 消費服務 134

6.2.1 簡單情形 134

6.2.2 一般情形 135

6.3 組合多個服務 138

6.4 將工作流暴露為服務 139

6.4.1 作為Web服務發布 139

6.4.2 在WCF服務中承載 141

6.5 展望 145

6.6 參考文獻 149

第三部分 安全

第7章 安全基礎 152

7.1 簡介 152

7.2 確保通信安全的基本任務 152

7.3 傳輸安全和訊息安全 153

7.4 使用傳輸安全 153

7.4.1 安裝證書 153

7.4.2 指定伺服器即將提供的證書 155

7.5 使用訊息安全 161

7.6 身份模擬與授權 166

7.6.1 身份模擬 166

7.6.2 授權 169

7.7 取消對Windows的更改 175

7.7.1 卸載證書 175

7.7.2 從IIS中刪除SSL配置 176

7.7.3 從http.sys中刪除SSL配置 176

7.7.4 恢復伺服器的標識 177

7.8 小結 177

7.9 參考文獻 177

第8章 WCS、信息卡和標識元系統 178

8.1 簡介 178

8.2 標識的角色 178

8.3 Microsoft Passport和其他標識驗證方法 180

8.4 標識規則 181

8.5 標識元系統 182

8.6 信息卡和CardSpace 186

8.7 管理信息卡 188

8.8 架構、協定和安全 192

8.9 CardSpace與企業 202

8.10 小結 205

8.11 參考文獻 205

第9章 使用信息卡保護應用程式的安全 207

9.1 簡介 207

9.2 標識元系統開發 207

9.3 CardSpace的簡單示例 209

9.4 CardSpace示例的準備工作 209

9.4.1 開啟IIS和asp.net 2.0210

9.4.2 獲取X.509證書210

9.4.3 將證書導入證書存儲區 210

9.4.4 更新Hosts檔案使DNS項與

證書匹配 211

9.4.5 IIS設定 211

9.4.6 讀取證書私鑰 211

9.4.7 HTTP配置 212

9.5 為WCF應用程式添加信息卡 213

9.6 添加信息卡 216

9.7 使用Federation綁定 220

9.8 捕獲異常 221

9.9 處理髮布的令牌 222

9.10 使用Metadata Resolver 224

9.11 為瀏覽器應用程式添加信息卡 225

9.12 創建託管卡 234

9.13 創建簡單的安全令牌服務 237

9.14 小結 239

9.15 參考文獻 239

第10章 高級安全 240

10.1 序幕 240

10.2 簡介 241

10.3 利用聲明保證資源安全 241

10.3.1 基於聲明授權和基於角色

授權 241

10.3.2 基於聲明授權和訪問控制

列表 242

10.3.3 採用基於聲明授權 243

10.4 使用XSI運用基於聲明的安全 244

10.4.1 利用Windows標識授權對

區域網路資源的訪問 244

10.4.2 改進初始方案 249

10.4.3 添加STS作為聯合的基礎 255

10.4.4 重新配置Resource Access

服務 265

10.4.5 重新配置客戶端 269

10.4.6 體驗帶有XSI的、聯合的、

基於聲明的標識的強大 271

10.5 基於聲明的安全和聯合安全 271

10.6 小結 272

10.7 參考文獻 273

第四部分 集成與互操作

第11章 遺留集成 276

11.1 簡介 276

11.2 COM+集成 276

11.2.1 支持的接口 277

11.2.2 選擇承載模式 277

11.3 使用COM+服務模型配置工具 278

11.4 將COM+組件以WCF Web服務提供 279

11.5 從COM調用WCF服務 284

11.5.1 創建服務 284

11.5.2 創建客戶端 286

11.5.3 創建VBScript檔案 288

11.5.4 測試解決方案 288

11.6 與MSMQ集成 289

11.7 創建與MSMQ集成的WCF服務 289

11.7.1 創建請求 289

11.7.2 創建服務 290

11.7.3 創建客戶端 292

11.7.4 測試 296

11.8 小結 296

第12章 互操作性 297

12.1 簡介 298

12.2 小結 299

12.3 參考文獻 299

第五部分 擴展WCF

第13章 定製行為 302

13.1 簡介 302

13.2 擴展WCF 302

13.3 用定製行為擴展服務模型 302

13.3.1 聲明你要提供的行為的類型 303

13.3.2 將定製行為附加到操作或

終結點上 306

13.3.3 將定製行為告知WCF 306

13.4 實現定製行為 306

13.4.1 聲明 306

13.4.2 附加 307

13.4.3 告知 307

13.5 實現各種類型的定製行為 313

13.5.1 操作選擇器 313

13.5.2 參數檢查器 315

13.5.3 訊息格式器 317

13.5.4 訊息檢查器 319

13.5.5 實例上下文提供者 321

13.5.6 實例提供者 321

13.5.7 操作調用器 322

13.6 實現WSDL導出擴展 323

13.7 定製行為實戰 325

13.8 小結 326

13.9 參考文獻 326

第14章 定製信道 327

14.1 簡介 327

14.2 綁定元素 327

14.2.1 出站通信 328

14.2.2 入站通信 328

14.3 信道是有形狀的 329

14.4 可能需要信道支持會話 330

14.5 根據契約匹配信道 330

14.6 通信狀態機 332

14.7 創建定製綁定元素 332

14.7.1 理解起點 332

14.7.2 提供一個支持出站通信的定

制綁定元素 333

14.7.3 更改自定綁定元素以支持入

站通信 339

14.7.4 通過配置套用定製綁定元素 344

14.8 小結 346

第15章 定製傳輸 348

15.1 簡介 348

15.2 傳輸信道 348

15.2.1 入站通信 348

15.2.2 出站通信 349

15.3 訊息編碼器 349

15.4 完善棧 349

15.5 實現傳輸綁定元素和編碼器綁定元素 350

15.5.1 場景 350

15.5.2 要求 351

15.5.3 TcpListener類和TcpClient類 351

15.6 實現支持任意TCP協定的定製綁定

元素 353

15.6.1 配置 353

15.6.2 定製傳輸綁定元素 355

15.6.3 信道監聽器 357

15.6.4 傳輸信道 359

15.6.5 訊息編碼器 361

15.6.6 使用定製傳輸綁定元素 362

15.7 小結 363

15.8 參考文獻 363

第六部分 具體案例

第16章 發布/訂閱系統 366

16.1 簡介 366

16.2 使用回調契約的發布/訂閱系統 366

16.3 使用MSMQ實際通用組播的發布/

訂閱系統 372

16.4 使用流的發布/訂閱系統 378

16.4.1 流傳輸模式 378

16.4.2 使用流傳輸模式傳送定製流 382

16.4.3 使用流傳輸模式和定製流實

現發布/訂閱系統 385

16.5 小結 388

16.6 參考文獻 389

第17章對等通信390

17.1 介紹對等信道 390

17.2 在點對點套用中使用結構化數據 390

17.3 利用Windows對等網路開發平台 391

17.4 理解Windows對等網路 391

17.5 使用對等信道 392

17.5.1 終結點 392

17.5.2 綁定 392

17.5.3 地址 395

17.5.4 契約 395

17.5.5 實現 396

17.6 對等信道實戰 396

17.6.1 構想解決方案 396

17.6.2 設計數據結構 399

17.6.3 定義服務契約 401

17.6.4 實現服務契約 403

17.6.5 配置終結點 404

17.6.6 將訊息發給特定的節點 406

17.6.7 定製對等名稱解析 408

17.6.8 查看對等信道的工作 412

17.7 對等信道和People Near Me 414

17.8 小結 414

17.9 參考文獻 414

第18章 REST和Plain XML服務 415

18.1 簡介 415

18.2 REST 415

18.3 REST服務 416

18.4 REST服務和Plain XML 416

18.5 REST服務的優點和局限 416

18.6 使用WCF創建RESTpox服務 417

18.6.1 REST POX服務終結點的

地址 417

18.6.2 REST POX服務終結點的

綁定 417

18.6.3 REST POX服務終結點的

契約 418

18.6.4 實現 418

18.6.5 應用程式範例 419

18.7 小結 423

18.8 參考文獻 423

第七部分 WCF應用程式的生命周期

第19章 可管理性 426

19.1 簡介 426

19.2 檢測功能與工具 426

19.2.1 配置系統和配置編輯器 427

19.2.2 Service Configuration Editor 429

19.2.3 安全事件的可配置審計 433

19.2.4 訊息日誌、活動跟蹤和

Service Trace Viewer 436

19.2.5 性能計數器 444

19.2.6 WMI提供程式 445

19.3 完善管理工具 453

19.4 小結 453

19.5 參考文獻 453

第20章 版本處理 454

20.1 簡介 454

20.2 版本術語 454

20.3 版本問題集 455

20.3.1 添加新的操作 455

20.3.2 更改操作 457

20.3.3 刪除一個操作 460

20.3.4 更改綁定 460

20.3.5 決定廢除一個終結點 460

20.3.6 更改服務終結點的地址 460

20.4 集中的生命周期管理 461

20.5 小結 462

20.6 參考文獻 463

第八部分 規範

第21章 規範 466

21.1 簡介 466

21.2 採用WCF 466

21.3 使用WCF地址 467

21.4 使用WCF綁定 469

21.5 使用WCF契約 471

21.5.1 使用結構化契約 473

21.5.2 使用行為契約 475

21.6 使用WCF服務 477

21.7 使用WCF客戶端 483

21.8 使用大量數據 488

21.9 調試WCF應用程式 490

21.10 小結 490

21.11 參考文獻 490

書摘插圖

第1章 預備知識

本章內容

*簡介

*分部類型

*泛型

*可空值類型

*輕量型事務管理器

*角色提供程式

*參考文獻

1.1 簡介

為了能正確理解並有效使用WCF,必需熟悉.MET Framework2.0和.NET CLR的一些功能特性。本章將介紹書中需要用到的分部類型、泛型、可空值類型、輕量級事務管理器和角色提供程式。對這些特性的講解並不是為了面面俱到,僅僅只是充分地闡明它們在後面章節中的用途。

……

相關搜尋

熱門詞條

聯絡我們