精通C# 3.0與.NET 3.5高級編程--LINQ、WCF、WPF、WF ( 簡體 字) |
作者:丁士鋒;朱毅;楊明羽 | 類別:1. -> 程式設計 -> .NET -> C# |
譯者: |
出版社:清華大學出版社 | 3dWoo書號: 21591 詢問書籍請說出此書號!【缺書】 【不接受訂購】 |
出版日:7/1/2009 |
頁數:782 |
光碟數:1 (含視頻教學) |
|
站長推薦:  |
印刷:黑白印刷 | 語系: ( 簡體 版 ) |
|
【不接受訂購】 |
ISBN:9787302195528 |
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 序 |
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證) |
作者序: |
譯者序: |
前言:
前 言 讀必有所學,學必有所用,用必有所成! .NET 3.5框架中到底發生了什么巨變? 2009年最流行的開發語言是C#,2009年最流行的框架是.NET 3.5,這些是微軟的口號和目標。因為微軟與眾多中國企業有合作關系,所以.NET 3.5的普及像颶風一樣登陸中國。很多企業在招聘條件中留下了這樣一條:會Visual Studio 2008和.NET 3.5框架者 優先。 微軟為什么力推.NET 3.5框架,它究竟能為企業帶來什么?這些問題的答案值得讀 者反復思考。本書寫作的目的就是為了尋找這些答案。下面來看一下.NET 3.5框架的結 構圖。
這是一個整體的開發框架,除最下面是微軟的操作系統.. |
內容簡介: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設計的優勢。 |
目錄:
目 錄 第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 ?? ?? ?? ?? 精通C# 3.0與.NET 3.5高級編程——LINQ.WCF.WPF.WF 目錄 ·X· ·XI·
|
序: |