-- 會員 / 註冊 --  
 帳號:
 密碼:
  | 註冊 | 忘記密碼
3/26 新書到! 3/19 新書到! 3/14 新書到! 12/12 新書到!
購書流程Q & A站務留言版客服信箱
3ds MaxMayaRhinoAfter EffectsSketchUpZBrushPainterUnity
PhotoShopAutoCadMasterCamSolidWorksCreoUGRevitNuke
C#CC++Java遊戲程式Linux嵌入式PLCFPGAMatlab
駭客資料庫搜索引擎影像處理FluentVR+ARANSYS深度學習
單晶片AVROpenGLArduinoRaspberry Pi電路設計CadenceProtel
HadoopPythonStm32CortexLabview手機程式AndroidiPhone
可查書名,作者,ISBN,3dwoo書號
詳細書籍分類

精通C# 5.0與.NET 4.5高級編程——LINQ、WCF、WPF和WF

( 簡體 字)
作者:張敬普、丁士鋒 等類別:1. -> 程式設計 -> .NET -> C#
譯者:
出版社:清華大學出版社精通C# 5.0與.NET 4.5高級編程——LINQ、WCF、WPF和WF 3dWoo書號: 37389
詢問書籍請說出此書號!

缺書
NT售價: 500

出版日:12/30/2013
頁數:796
光碟數:0
站長推薦:
印刷:黑白印刷語系: ( 簡體 版 )
加入購物車 加到我的最愛
(請先登入會員)
ISBN:9787302333883
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證)
作者序:

譯者序:

前言:

讀必有所學,學必有所用,用必有所成!
.NET 4.5框架中到底發生了什么巨變?
隨著信息時代的技術更新水平越來越快,微軟也推出了針對智能手機開發的Windows Phone和針對“云”開發的Windows Azure,如果你一直在使用微軟的工具進行開發,則.NET 4.5框架是你的首選。
.NET Framework是Windows、Windows Phone、Windows Server和Windows Azure生成應用程序的開發平臺。它包括公共語言運行時(CLR)和.NET Framework類庫,其中包含類、接口和支持多種技術的值類型。.NET Framework提供托管執行環境、簡化的開發和部署以及與各種編程語言(包括Visual Basic和Visual C#)的集成。
還是通過下面的圖來了解.NET 4.5框架的基礎構成。

四大利器都能完成什么功能?
.NET 4.5完善了LINQ、WCF、WF和WCF這些技術,所有研究.NET框架的人都把這些技術稱為4大利器。但還是有很多人不明白這些究竟能為項目帶來什么優勢?能為程序員帶來什么便利?能具體應用到哪些地方?這些問題是所有開發人員所關注的問題,也是本書要介紹的重點知識。
(1)LINQ技術將傳統查詢語言(如SQL)和傳統開發語言(如C#)集成到一起,使得對內存數據的查詢更加高效、語法更簡單。這種變革涉及LINQ語法、LINQ to ADO.NET和LINQ to XML等技術。
(2)WPF是創建華麗用戶界面的基本技術,讓用戶的Windows界面像Windows 7系統一樣。WPF能開發什么東西呢?
* WPF應用程序:獨立可執行應用程序,類似exe應用程序。
* WPF瀏覽器應用程序:基于XAML的瀏覽器的應用程序(好似B/S應用程序)。
* WPF用戶控件庫:用于創建可重用的、組件化的用戶控件庫。
* WPF自定義控件庫:用于開發WPF自定義控件的控件庫項目。
(3)WCF(Windows Communication Foundation)作為微軟對SOA(Service Oriented Architecture,面向服務)這一熱潮的回應,成為了.NET 4.5中最為重要的組成部分之一。WCF整合了以前微軟對分布式系統開發所作出的所有努力,如.NET Remoting、WSE 2.0、WSE 3.0等。
WCF是不是SOA?是不是面向服務的編程?這個疑問從一開始就有很多人提出來。的確,WCF簡化了SOA面向服務開發技術,并且支持跨區域、跨服務器的各種分布式開發,也支持未來的開發模式,想不學習都難!面向服務開發,就是一個程序調用的服務可能來自不同的服務器,如下圖所示就是一個客戶調用了來自不同地方的4個服務。
(4)WF就是工作流,所有做過OA系統的人都知道,所有做過項目的人也都知 道,任何一個系統都離不開流程,如項目的初期規劃、項目的進度、項目的管理資源分配。WF都能給你一個完美的解決方案。如下圖給出了一個訂單批核的工作流。如果用普通的C#語言開發,一般程序員可能用一周,而如果用WF,則最多用半天,簡化了程序員的勞動程序。

C#開發語言即將何去何從?
C#是微軟推出的面向對象開發語言,因為微軟的著力推廣,目前已經超過Visual Basic,成為最流行的最快速的開發語言。目前最新的C#版本是5.0,支持.NET 4.5框架,最新的開發工具是Visual Studio 2012。提升了版本,那究竟用C#都能干什么呢?學習了一身武藝,該如何施展呢?下面用幾位老作者的話來幫助讀者分析分析。
* C#的開發方向涉及了幾乎所有的領域,如窗體開發、網絡開發、手機開發、通信開發、數據庫開發、云技術開發等。
* C#基于.NET框架之上,只需要學習兩部分內容:語法基礎和如何調用類庫。因為.NET框架幾乎提供了各種應用開發所需要的類庫,如針對安全的、針對驗證的、針對網絡的、針對數據庫的等。
* C#開發語言會越來越犀利,它已經結合了Visual Basic的快速開發功能和Java的快速安全功能,但它還是不能具備與平臺無關性。
* C#具有語法表現能力強、簡單易學的特點,同時微軟提供的Visual Studio開發工具,能幫助開發人員快速、方便地找到各種錯誤、技巧和方法與類的定義,而且Visual Studio還集編碼、調試、測試為一體。
如何學好C#?——多位資深程序員的心得共享
如何學好C#,這是每個初學者必問的問題。下面來聽聽資深開發者的這些話吧。
* 找問題、提問題、解決問題,這是我學習新技術的3大法寶。
* 選擇好的開發語言、好的開發工具和好的開發方向,這是C#的門檻。
* 不是所有的語言都要學,但語言的語法一定要學精。同時要了解這門語言能帶來什么,能提升什么,能為我們做什么。
* 了解技術的先進性,掌握基礎語法、先進技術和技巧,多實踐。
下圖是我從一個C#初學者到高級研究員的行走曲線。

本書內容特色
本書不僅講解了.NET 4.5框架之上的4種開發技術,即LINQ、WPF、WF和WCF,還通過這些技術,深入學習了.NET 4.5的底層開發技術。
本書知識點豐富、應用實例廣泛,是多位作者共同努力的結果。每位作者在.NET不同的領域,都有自己最擅長的技術。全書講解方式簡單、直白,難點注釋清楚,實例力求接近實際。本書內容主要有以下特色。
* 本書首先從C#的基礎語法和面向對象編程講起,為初學者鋪墊入門之路。
* 本書盡量減少長篇代碼段,力爭每個代碼段都讓讀者明明白白。
* 本書知識點豐富,涉及這4項關鍵技術方方面面的應用。
* 本書實例面向實際開發,讀者可根據實際情況順手拈來。
* 對于讀者工作中經常遇到的問題,書中給出了技巧、注意等專門說明。
本書知識結構體系
本書首先普及了C#的基礎語法,然后介紹了如何用C#進行面向對象編程。最后將內容分解,逐一介紹.NET 4.5的4大法寶。本書共分成5篇。
第1篇(第1章∼第3章):這是C#面向對象開發的基礎,包括語法和面向對象編程。主要是帶領讀者學習和回顧一些C#的關鍵知識點。
第2篇(第4章∼第6章):介紹.NET 4.5中的集成查詢技術LINQ。這種技術代替了原有的SQL,而且可以提供更好的完全面向對象開發的數據通信技術。LINQ可以與常見的數據庫、XML、Dataset等進行交互,是多功能集成查詢技術。本篇提供了20個完整案例,供讀者進行理論學習后的實踐操作。
第3篇(第7章∼第18章):WPF一直被稱為最絢麗的技術,是微軟公司在.NET Framework 4.5平臺上推出的一個圖形平臺。使用WPF可以在Windows 7操作系統平臺上開發出具有絢麗視覺效果的應用程序,而且這些效果還可以應用在Windows XP或者是Windows 2003操作系統上。本篇是全書的重點推薦篇。因為隨著技術的發展,如何讓人們覺得網絡生活更美、更有趣、更智能是開發人員的追求,而WPF是實現這一追求的目標。本篇共有130多個案例,其中有10多個大的案例。
第4篇(第19章∼第22章):WF是微軟推出的一套工作流開發框架,是所有OA系統必需的一項功能。最早的WinFx是WF的前身,在.NET 4.5框架中,推出了更完整的工作流定義程序。WF不是一個獨立的工作流應用程序,它提供了一些類庫用于輔助工作流應用程序的開發,并提供了實現工作流應用程序時所需要實現的一些機制。本篇30個大小案例,其中大的案例有5個,實戰項目1個。
第5篇(第23章∼第28章):WCF是與SOA息息相關的技術。本篇會讓讀者首先明白究竟什么是SOA,然后介紹SOA技術的原理,最后會讓讀者學會使用WCF技術。WCF的設計目的是為分布式計算提供可管理的方法,提供廣泛的互操作性,并為服務定位提供直接的支持。本篇有50多個案例。
適合閱讀本書的讀者有哪些?
* 想學習C# 5.0開發技術的人員;
* C# 5.0初級、中級人員;
* 想開發絢麗的WinForm窗體應用程序開發的人員;
* 想使用WPF進行應用程序開發的人員;
* 想學習LINQ使用的人員;
* 想學習OA系統的人員;
* 想學習WCF遠程通信技術的人;
* 想深入了解.NET框架的開發人員;
* 想使用書中其他具體技術的人員。
本書作者
本書第1∼18章由張敬普主筆編寫,第19∼28章由丁士鋒主筆編寫。王金柱負責全書的技術審查和程序代碼的測試、調試等工作,并且參與了部分章節的寫作。除了主創人員外,參與本書編寫和程序調試的人員有陳鵬、段麗鋼、侯晶晶、侯亮亮、侯榮、侯瑞雪、胡慧、李慧敏、盧劍輝、沈煒、孫景瑞、王大中、吳艷敏、閆剛、張瓊、張笑、朱萬江、劉素兵、張華、王冬姣、劉應舫、關黎霞、曾源、池劍鋒、郝軍、周凌霄、葛亮、郭頌、金楠、劉巖、馬軍、王晉凱、武松、張國平。
閱讀本書的過程中,有任何疑問可以發郵件到bookservice2008@163.com,我們會及時解決你的問題。

編著者
內容簡介:

.NET 4.5框架集成了對Windows窗體、Windows Phone、Windows Server和Windows Azure等各個方向的開發類庫。本書借助Visual Studio 2012開發工具,詳細介紹了.NET框架中的4大開發利器:LINQ、WPF、WF和WCF。
本書共分為5篇28章。第1篇為C#面向對象開發基礎,主要讓讀者了解基于框架的開發語言C#;第2篇為C#中的LINQ開發,介紹了如何使用LINQ在對象和數據之間建立一種對應關系,然后通過訪問內存對象的方式查詢數據集合;第3篇為WPF開發,詳細介紹了如何利用WPF這個圖形平臺,改變傳統Windows程序員的開發觀念和開發方式;第4篇為WF工作流開發,介紹了實現工作流應用程序時所需要實現的一些機制,比如持久化、補償、跟蹤機制等;第5篇為WCF開發,學習如何利用遠程通信技術,實現托管、服務實例管理、異步、安全、事務管理、離線隊列等功能。
本書實例具有代表性,編碼規范,講解詳細,適合想系統學習C#開發和.NET 4.5平臺的技術人員研讀,也可作為特定技術開發人員的參考書程。對于.NET程序員,本書不失為一本極佳的案頭必備手冊。


目錄:

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

第2篇 C#中的LINQ開發
第4章 LINQ查詢基礎 38
4.1 LINQ基礎概念 38
4.1.1 什么是LINQ 38
4.1.2 如何使用LINQ 39
4.1.3 LINQ查詢 40
4.2 LINQ查詢表達式 41
4.2.1 查詢表達式 41
4.2.2 用from子句指定數據源 42
4.2.3 用select子句指定目標數據 43
4.2.4 用where子句指定篩選條件 46
4.2.5 用orderby子句進行排序 48
4.2.6 用group子句進行分組 49
4.2.7 用from子句進行復合查詢 52
4.2.8 用join子句進行聯接 54
4.2.9 用join子句進行內部聯接 54
4.2.10 用join子句進行分組聯接 55
4.2.11 用join子句進行左外部聯接 56
4.3 LINQ查詢方法 57
4.3.1 IEnumerable接口 57
4.3.2 Lambda表達式 59
4.3.3 用Where()方法進行篩選 60
4.3.4 用OrderBy()方法進行排序 61
4.3.5 用Skip()、SkipWhile()跳過元素 64
4.3.6 用Take()、TakeWhile()提取元素 65
4.3.7 用Max()等對元素進行數值計算 66
4.3.8 用Distinct()消除集合中相等的元素 67
4.3.9 用Concat()連接兩個集合 70
4.3.10 用Union()等進行集合操作 71
4.4 小結 73
第5章 LINQ to ADO.NET——支持 LINQ語言與ADO.NET的交互 74
5.1 LINQ to ADO.NET概述 74
5.1.1 LINQ to DataSet概述 74
5.1.2 LINQ to SQL概述 75
5.2 LINQ to DataSet--實現復雜數據查詢 76
5.2.1 使用LINQ to DataSet 76
5.2.2 查詢單個數據表 77
5.2.3 查詢多個數據表 80
5.2.4 用查詢創建數據表 83
5.2.5 修改表中字段數據 85
5.2.6 使用數據視圖DataView 86
5.3 LINQ to SQL--對象模型 89
5.3.1 對象模型的原理 89
5.3.2 生成對象關系設計器 90
5.3.3 對象關系設計器的構成 92
5.3.4 深入LINQ to SQL類 93
5.3.5 通過綁定瀏覽數據庫記錄 95
5.3.6 用LINQ查詢LINQ to SQL類 97
5.3.7 修改數據庫記錄 99
5.4 小結 100
第6章 LINQ to XML--支持LINQ語 言與XML語言的交互 102
6.1 LINQ to XML概述 102
6.1.1 什么是LINQ to XML 102
6.1.2 LINQ to XML與DOM 104
6.2 構造XML樹 105
6.2.1 構造簡單的XML元素 105
6.2.2 構造具有屬性的XML元素 107
6.2.3 構造具有子元素的XML元素 110
6.2.4 用XElement類構造XML樹 111
6.3 查詢XML樹 112
6.3.1 查找具有特定屬性的元素 112
6.3.2 查找具有特定子元素的元素 114
6.3.3 對XML元素進行排序 115
6.3.4 基于上下文查詢元素 116
6.4 操作XML樹 117
6.4.1 加載和保存XML樹 118
6.4.2 添加元素到XML樹 119
6.4.3 移除XML樹的元素和屬性 121
6.5 小結 125
第3篇 WPF美輪美奐技術
第7章 WPF編程入門 128
7.1 WPF概述 128
7.1.1 理解Windows圖形系統 128
7.1.2 WPF的功能特點 129
7.1.3 WPF架構簡介 129
7.1.4 WPF的類層次結構 130
7.2 WPF開發工具簡介 132
7.2.1 Visual Studio 2012開發工具 132
7.2.2 Microsoft Expression Blend設計工具 133
7.2.3 XAMLPad標記文本查看器 134
7.2.4 ZAM 3D第三方工具(3D模型) 135
7.3 第一個WPF應用程序 136
7.4 WPF應用程序結構 137
7.5 WPF與.NET Framework 4.5平臺 138
7.5.1 Windows Communication Foundation概述 138
7.5.2 Windows CardSpace概述 140
7.5.3 Windows Workflow Foundation 概述 140
7.6 小結 141
第8章 XAML標記語言 143
8.1 理解XAML 143
8.1.1 XAML是什么 143
8.1.2 用C#模擬XAML實現的內容 145
8.1.3 XAML的種類 147
8.2 XAML基礎 147
8.2.1 命名空間 148
8.2.2 代碼后置文件 150
8.2.3 使用簡單的屬性和類型轉換器 153
8.2.4 屬性語法與屬性元素語法 154
8.2.5 標記擴展特性 157
8.2.6 附加屬性 157
8.2.7 特定的字符和空白 160
8.2.8 在XAML中使用事件 161
8.2.9 使用其他命名空間中的類型 163
8.2.10 加載和編譯XAML 164
8.3 小結 169
第9章 Application全局應用程序類 170
9.1 應用程序生命周期 170
9.1.1 創建Application對象 170
9.1.2 創建一個自定義的Application類 172
9.1.3 關閉應用程序 173
9.1.4 應用程序事件 174
9.2 事件執行周期 175
9.2.1 Startup應用程序啟動事件 175
9.2.2 Activated和Deactiveated事件——激活與取消激活 176
9.2.3 DispatherUnhandledException事件——處理應用程序未處理的異常 177
9.2.4 SessionEnding事件——注銷或關閉系統 178
9.2.5 Exit事件——退出應用程序 179
9.3 Application類的任務 181
9.3.1 處理命令行參數 181
9.3.2 訪問當前的應用程序 182
9.3.3 單實例應用程序 185
9.4 小結 190
第10章 WPF布局 191
10.1 理解WPF布局 191
10.1.1 WPF的布局原理 191
10.1.2 布局的過程 192
10.1.3 布局容器 192
10.2 使用StackPanel進行簡單地布局 193
10.2.1 StackPanel示例 193
10.2.2 StackPanel布局屬性 195
10.3 使用WrapPanel和DockPanel 197
10.3.1 使用WrapPanel控件布局 197
10.3.2 使用DockPanel控件布局 198
10.3.3 簡單對話框的實現 200
10.4 Grid控件 201
10.4.1 創建Grid控件 201
10.4.2 調整行列尺寸 203
10.4.3 編程創建Grid控件 206
10.4.4 合并行和列 208
10.4.5 窗體分割 209
10.4.6 共享尺寸組 212
10.4.7 使用UniformGrid控件 216
10.5 基于坐標布局的Canvas 217
10.5.1 Canvas控件的使用方法 217
10.5.2 Canvas的Z軸 218
10.5.3 InkCanvas介紹 219
10.6 小結 221
第11章 內容控件 222
11.1 理解內容控件 222
11.1.1 什么是內容控件 222
11.1.2 Content屬性介紹 224
11.1.3 內容的對齊屬性 226
11.2 內容容器控件 227
11.2.1 ScrollViewer滾動條控件 227
11.2.2 GroupBox組合框和TabItem標簽頁控件 231
11.2.3 Expander可折疊控件 234
11.3 裝飾控件 236
11.3.1 Border邊框控件 237
11.3.2 Viewbox自動縮放控件 238
11.4 小結 239
第12章 WPF依賴屬性和事件路由 240
12.1 WPF中的樹 240
12.1.1 邏輯樹和視覺樹 240
12.1.2 編程遍歷樹結構 242
12.2 理解依賴屬性 244
12.2.1 依賴屬性的概念 244
12.2.2 定義依賴屬性 246
12.2.3 依賴屬性示例 249
12.2.4 共享依賴屬性 253
12.2.5 注冊附加屬性 254
12.3 理解事件路由 255
12.3.1 路由事件的概念 255
12.3.2 定義和注冊路由事件 257
12.3.3 事件路由策略 259
12.3.4 RoutedEventArgs類型的參數 262
12.3.5 附加事件 263
12.4 WPF中的事件 264
12.4.1 生命周期事件 264
12.4.2 鍵盤事件 265
12.4.3 鍵盤焦點 269
12.4.4 鍵盤狀態 270
12.4.5 鼠標事件 271
12.4.6 捕捉鼠標 275
12.4.7 鼠標拖放編程 277
12.4.8 文件拖放示例 279
12.5 小結 282
第13章 標準控件 283
13.1 控件基礎 283
13.1.1 背景色和前景色畫刷 283
13.1.2 透明度設置 285
13.1.3 更改字體 286
13.1.4 更改鼠標光標 287
13.2 內容控件 291
13.2.1 Label標簽控件 291
13.2.2 Button控件 292
13.2.3 CheckBox和RadioButton控件 295
13.2.4 ToolTip提示控件 296
13.2.5 使用ToolTipService對象ToolTip 298
13.2.6 使用Popup控件 300
13.3 文本控件 303
13.3.1 TextBox控件 304
13.3.2 選擇文本 305
13.3.3 PasswordBox密碼框控件 306
13.3.4 TextBlock控件 308
13.4 列表控件 310
13.4.1 ListBox列表框控件 310
13.4.2 獲取ListBox選定項 312
13.4.3 在ListBox中進行多選 314
13.4.4 ComboBox下拉列表框控件 315
13.5 范圍控件 318
13.5.1 ProgressBar進度條控件 318
13.5.2 Slider滑動條控件 319
13.6 小結 322
第14章 窗口與導航 323
14.1 Windows類簡介 323
14.1.1 Window類的基本屬性 323
14.1.2 窗口的生命周期 326
14.1.3 模式與非模式窗口 329
14.1.4 窗口的定位和尺寸 330
14.1.5 保存和恢復窗口位置 331
14.2 對話框窗口 332
14.2.1 窗口的宿主 332
14.2.2 對話框模型 333
14.2.3 MessageBox消息框 335
14.2.4 通用對話框 336
14.3 非矩形窗口 338
14.3.1 圓角窗口 339
14.3.2 圖形窗口 340
14.3.3 調整非矩形窗口尺寸 342
14.4 一個簡單的導航應用程序示例 343
14.5 基于頁面的用戶界面 345
14.5.1 Page類簡介 345
14.5.2 使用Hyperlink超級鏈接 346
14.5.3 片段導航 347
14.5.4 NavigationWindow導航窗口 348
14.5.5 Frame頁面框架 349
14.5.6 導航歷史記錄 352
14.6 NavigationService導航服務 353
14.6.1 編程控制導航 353
14.6.2 導航生命期事件 355
14.6.3 導航記錄管理 358
14.6.4 使用頁函數PageFunction 363
14.7 XAML瀏覽器應用程序 366
14.7.1 XBAP的特點 367
14.7.2 創建XBAP應用程序 367
14.8 小結 368
第15章 WPF資源、樣式和控件模板 369
15.1 程序集資源 369
15.1.1 添加資源 369
15.1.2 獲取程序集資源 369
15.2 對象資源 371
15.2.1 資源集合 372
15.2.2 靜態和動態資源 373
15.2.3 非共享資源 374
15.2.4 編程訪問資源 375
15.2.5 應用程序資源 375
15.2.6 系統資源 376
15.2.7 使用資源字典組織資源 377
15.3 樣式基礎 378
15.3.1 創建一個樣式對象 379
15.3.2 在樣式中設置屬性 380
15.3.3 根據指定的類型自動應用樣式 381
15.3.4 多級樣式 382
15.3.5 綁定事件處理器 382
15.4 樣式觸發器 384
15.4.1 創建簡單觸發器 384
15.4.2 創建事件觸發器 387
15.4.3 數據觸發器 387

15.5 控件模板 390
15.5.1 理解控件模板 390
15.5.2 一個按鈕模板示例 390
15.5.3 模板的綁定 392
15.5.4 模板觸發器 393
15.6 小結 395
第16章 形狀、變換和畫刷 396
16.1 WPF圖形 396
16.1.1 Shape類 396
16.1.2 Rectangle和Ellipse類 397
16.1.3 Stretch屬性 398
16.1.4 Line直線對象 399
16.1.5 Polyline多段線對象 400
16.1.6 Polygon多邊形對象 401
16.1.7 線帽和線連接點 403
16.1.8 繪制虛線 404
16.2 畫刷 405
16.2.1 LinearGradientBrush線性漸變畫刷 405
16.2.2 RadialGradientBrush徑向漸變畫刷 407
16.2.3 ImageBrush圖像畫刷 409
16.2.4 VisualBrush可視化對象畫刷 410
16.2.5 OpacityMask不透明蒙板 411
16.3 WPF變換 414
16.3.1 應用變換 414
16.3.2 TranslateTransform移動變換 415
16.3.3 RotateTransform旋轉變換 416
16.3.4 ScaleTransform縮放變換 417
16.3.5 SkewTransform扭曲變換 418
16.3.6 TransformGroup組合變換 419
16.4 位圖效果 420
16.4.1 模糊 420
16.4.2 凹凸效果 422
16.4.3 浮雕效果 423
16.4.4 發光和陰影 424
16.5 小結 425
第17章 幾何圖形、圖像和可視化層 426
17.1 路徑和幾何圖形 426
17.1.1 線型、矩形和橢圓幾何圖形 426
17.1.2 使用GeometryGroup組合形狀 427
17.1.3 使用CombinedGeometry結合形狀 428
17.1.4 認識PathGeometry對象 430
17.1.5 用PathGeometry對象繪制直線 431
17.1.6 用PathGeometry對象繪制弧線 431
17.1.7 用PathGeometry對象繪制貝塞爾曲線 432
17.1.8 使用幾何迷你語言 433
17.1.9 幾何圖形的裁切 434
17.2 繪圖 435
17.2.1 繪制形狀 436
17.2.2 繪制圖像 437
17.2.3 組合繪制 438
17.3 可視化層 439
17.3.1 在Visual上繪圖 439
17.3.2 DrawingVisual宿主容器 441
17.3.3 使用命中測試 443
17.4 小結 445
第18章 WPF數據綁定 446
18.1 數據綁定基礎 446
18.1.1 綁定到元素屬性 446
18.1.2 使用程序代碼創建綁定 447
18.1.3 綁定多個屬性 448
18.1.4 綁定的方向 449
18.1.5 綁定更新 450
18.1.6 綁定到非元素的對象 452
18.2 數據庫綁定 456
18.2.1 創建數據訪問組件 456
18.2.2 實現數據實體對象 458
18.2.3 顯示綁定對象 459
18.2.4 更新數據庫 461
18.3 小結 463
第4篇 WF工作流編程
第19章 WF編程入門 466
19.1 WF基礎 466
19.1.1 WF簡介 466
19.1.2 WF的開發環境 468
19.1.3 第一個工作流示例程序 469
19.1.4 WF架構簡介 473
19.2 使用WorkflowRuntime和WorkflowInstance類 474
19.2.1 理解WorkflowRuntime工作流引擎 475
19.2.2 理解WorkflowInstance工作流實例 478
19.3 工作流類型和創建模式 479
19.3.1 WF工作流的類型 480
19.3.2 一個簡單的狀態機工作流示例 480
19.3.3 WF工作流的創建模式 483
19.4 小結 484
第20章 WF活動 485
20.1 理解WF活動 485
20.1.1 活動的類層次結構 485
20.1.2 活動條件類型 485
20.2 使用WF的基本活動 488
20.2.1 使用IfElseActivity活動 489
20.2.2 使用WhileActivity活動 490
20.2.3 使用ParalleActivity活動 491
20.2.4 使用ReplicatorActivity活動 494
20.2.5 使用ConditionedActivityGroup活動 498
20.2.6 使用InvokeWorkflowActivity活動 501
20.2.7 使用TerminateActivity活動 504
20.2.8 使用SuspendActivity活動 504
20.3 本地服務和事件驅動的活動 507
20.3.1 理解和實現本地服務 507
20.3.2 使用本地服務在宿主和工作流之間通信 508
20.3.3 事件驅動的活動簡介 512
20.3.4 EventDrivenActivity和ListenActivity使用示例 513
20.3.5 使用EventHandlingScopeActivity活動 516
20.4 小結 522
第21章 WF服務 523
21.1 WF服務基礎 523
21.1.1 WF服務的分類 523
21.1.2 默認的服務類簡介 524
21.2 WF持久化服務 525
21.2.1 準備數據庫 525
21.2.2 創建工作流 527
21.2.3 使用SqlWorkflowPersistenceService 528
21.3 WF跟蹤服務 536
21.3.1 使用工作流跟蹤服務 536
21.3.2 跟蹤服務配置文件 540
21.4 小結 541
第22章 基于ASP.NET的工作流批核系統 542
22.1 工作流批核系統簡介 542
22.1.1 系統運行效果 543
22.1.2 系統基本結構 546
22.2 Workflows工作流項目 547
22.2.1 基于事件驅動的活動實現 548
22.2.2 UserActivity用戶活動實現 549
22.2.3 SaveWorkItems自定義活動實現 556
22.2.4 ApprovedWorkItemWorkflow工作流實例的實現 557
22.2.5 工作流項目幫助類的實現 559
22.3 ASP.NET宿主應用程序項目 561
22.3.1 初始化工作流運行時引擎 561
22.3.2 創建工作流實例 562
22.3.3 編輯和審核工作申請表單 564
22.4 小結 568
第5篇 WCF開發
第23章 SOA和WCF基礎介紹 570
23.1 SOA架構介紹 570
23.1.1 軟件設計思想發展的簡要介紹 570
23.1.2 什么是SOA 571
23.2 WCF簡要介紹 572
23.2.1 什么是WCF 572
23.2.2 WCF體系框架 573
23.2.3 WCF基礎概念介紹 575
23.3 第一個WCF程序 577
23.3.1 HelloWorld服務契約的定義 577
23.3.2 HelloWorld的宿主程序 579
23.3.3 訪問HelloWorld服務的客戶端程序 581
23.4 小結 583
第24章 通道模型和綁定 584
24.1 WCF通道模型 584
24.1.1 WCF通道模型概述 584
24.1.2 消息交換模式和通道形狀 585
24.1.3 數據報模式 585
24.1.4 請求-響應模式 588
24.1.5 雙工模式 590
24.1.6 帶會話的數據報模式、請求-響應模式和雙工模式 592
24.1.7 通道形狀的改變 592
24.1.8 通道形狀和上層服務協議 593
24.1.9 通道管理器 594
24.1.10 ICommunicationObject接口和狀態改變 595
24.2 標準綁定介紹 598
24.2.1 綁定的基本概念 598
24.2.2 標準綁定 599
24.2.3 設置綁定的方式 600
24.2.4 如何選擇綁定 601
24.3 本機WCF-WCF交互的綁定和地址 602
24.3.1 場景概述 602
24.3.2 IPC基本概念 603
24.3.3 使用netNamedPipeBinding 604
24.3.4 netNamedPipeBinding的地址和配置 605
24.3.5 netNamedPipeBinding特點總結 607
24.4 跨主機WCF-WCF交互的綁定和地址 607
24.4.1 場景概述 607
24.4.2 TCP協議概述 607
24.4.3 Net.Tcp端口共享 608
24.4.4 使用netTcpBinding 609
24.4.5 netTcpBinding的地址和配置 610
24.4.6 netTcpBinding特點總結 612
24.5 與WS-I Basic Web服務進行交互的綁定和地址 613
24.5.1 場景概述 613
24.5.2 SOAP協議概述 613
24.5.3 使用basicHttpBinding 614
24.5.4 basicHttpBinding的地址和配置 615
24.5.5 basicHttpBinding特點總結 617
24.6 與改進Web服務進行交互的綁定和地址 618
24.6.1 場景概述 618
24.6.2 改進Web服務協議概述 618
24.6.3 使用wsHttpBinding 622
24.6.4 wsHttpBinding的地址和配置 624
24.6.5 wsHttpBinding特點總結 627
24.6.6 使用wsDualHttpBinding 627
24.6.7 wsDualHttpBinding的地址和配置 628
24.6.8 wsDualHttpBinding特點總結 630
24.6.9 使用ws2007HttpBinding 630
24.7 使用脫機模式進行消息交互的綁定和地址 631
24.7.1 場景概述 631
24.7.2 MSMQ協議概述 631
24.7.3 使用netMsmqBinding 633
24.7.4 netMsmqBinding的地址和配置 634
24.7.5 netMsmqBinding特點總結 636
24.7.6 使用msmqIntegrationBinding 636
24.7.7 msmqIntegrationBinding的地址和配置 637
24.7.8 msmqIntegrationBinding特點總結 639
24.8 小結 640
第25章 定義服務:契約編程 641
25.1 契約定義和分類 641
25.1.1 什么是契約 641
25.1.2 契約分類 641
25.2 服務契約 642
25.2.1 服務契約和WSDL 642
25.2.2 服務契約的重載問題 644
25.2.3 定義請求-響應操作 646
25.2.4 定義單程操作 647
25.2.5 定義雙程操作 649
25.2.6 WCF中事件的實現 657
25.3 數據契約 661
25.3.1 數據契約和XSD 661
25.3.2 使用DataContract特性定義數據契約 663
25.3.3 數據契約的繼承 666
25.3.4 已知類型的定義 667
25.3.5 數據契約的等效性 672
25.3.6 數據契約的版本控制 675
25.3.7 定義必需的數據成員 678
25.3.8 數據默認值的發送 680
25.3.9 數組和集合的處理 680
25.4 消息契約 684
25.4.1 消息契約基本概念 684
25.4.2 強類型消息 686
25.4.3 弱類型消息 692
25.5 錯誤處理和錯誤契約 695
25.5.1 SOAP消息的錯誤處理 695
25.5.2 服務端未捕獲的異常 696
25.5.3 包含詳細異常信息 698
25.5.4 捕捉服務異常 699
25.5.5 FaultCode和FaultReason的使用 701
25.5.6 使用錯誤契約和FaultException 703
25.6 小結 706
第26章 WCF中的行為 707
26.1 實例管理 707
26.1.1 實例管理的設置 707
26.1.2 PerCall實例策略 708
26.1.3 PerSession實例策略和會話 710
26.1.4 Single實例策略 713
26.2 并發管理 717
26.2.1 并發管理的設置 717
26.2.2 Single并發模式 717
26.2.3 Multiple并發模式 720
26.2.4 Reentrant并發模式 721
26.3 元數據的發布 724
26.3.1 HTTP-GET方式發布元數據 724
26.3.2 MEX終結點方式發布元數據 727
26.4 事務管理 728
26.4.1 事務的基本概念和特性 728
26.4.2 單服務事務 729
26.4.3 分布式事務 733
26.4.4 事務協議和事務管理器 739
26.5 小結 741
第27章 安全 742
27.1 常用概念介紹 742
27.1.1 身份驗證 742
27.1.2 授權 743
27.1.3 保密性 743
27.1.4 完整性 743
27.1.5 憑據 743
27.2 傳輸安全性 744
27.2.1 傳輸安全性的三要素 744
27.2.2 WCF支持的傳輸安全模式 744
27.2.3 傳輸安全模式的配置 745
27.2.4 Transport安全模式下的憑證 746
27.2.5 Message安全模式下的憑證 747
27.3 局域網內Windows平臺系統的安全性 747
27.3.1 場景分析 747
27.3.2 服務定義 748
27.3.3 身份認證 750
27.3.4 授權 752
27.4 跨Internet系統的安全性 756
27.4.1 場景概述和綁定選擇 756
27.4.2 消息安全 757
27.4.3 身份認證 760
27.4.4 授權 762
27.5 安全機制的日志和跟蹤 763
27.6 小結 764
第28章 自動點滴管理系統 765
28.1 需求分析 765
28.1.1 系統介紹 765
28.1.2 客戶端功能 765
28.1.3 服務端功能 766
28.2 系統設計 766
28.2.1 服務邊界和接口 766
28.2.2 傳輸和寄宿的設計 766
28.2.3 界面的設計 767
28.3 系統實現 768
28.3.1 服務契約的定義 768
28.3.2 數據契約的定義 769
28.3.3 服務的實現 774
28.3.4 控制臺實現 780
28.3.5 客戶端實現 788
28.4 運行和測試 796
28.5 小結 797
序: