注冊(cè) | 登錄讀書(shū)好,好讀書(shū),讀好書(shū)!
讀書(shū)網(wǎng)-DuShu.com
當(dāng)前位置: 首頁(yè)出版圖書(shū)科學(xué)技術(shù)計(jì)算機(jī)/網(wǎng)絡(luò)軟件與程序設(shè)計(jì)C/C++及其相關(guān)精通C#(第6版)

精通C#(第6版)

精通C#(第6版)

定 價(jià):¥159.00

作 者: (美)特羅爾森 著,姚琪琳 等譯
出版社: 人民郵電出版社
叢編項(xiàng):
標(biāo) 簽: C C++ C# VC VC++ 程序設(shè)計(jì) 計(jì)算機(jī)/網(wǎng)絡(luò)

購(gòu)買(mǎi)這本書(shū)可以去


ISBN: 9787115321817 出版時(shí)間: 2013-07-01 包裝: 平裝
開(kāi)本: 大16開(kāi) 頁(yè)數(shù): 1192 字?jǐn)?shù):  

內(nèi)容簡(jiǎn)介

  《圖靈程序設(shè)計(jì)叢書(shū):精通C#(第6版)》是C#領(lǐng)域久負(fù)盛名的經(jīng)典著作,深入全面地講解了C#編程語(yǔ)言和.NET平臺(tái)的核心內(nèi)容,并結(jié)合大量示例剖析相關(guān)概念。全書(shū)分為八部分:C#和.NET平臺(tái)、C#核心編程結(jié)構(gòu)、C#面向?qū)ο缶幊?、高?jí)C#編程結(jié)構(gòu)、用.NET程序集編程、.NET基礎(chǔ)類(lèi)庫(kù)、WPF和ASP.NET Web Forms。第6版是對(duì)第5版的進(jìn)一步更新和完善,內(nèi)容涵蓋了最先進(jìn)的.NET編程技術(shù)和技巧,并準(zhǔn)確呈現(xiàn)出C#編程語(yǔ)言的最新變化和.NET 4.5 Framework的新特性。《圖靈程序設(shè)計(jì)叢書(shū):精通C#(第6版)》由微軟C# MVP Andrew Troelsen編寫(xiě),第6版專(zhuān)門(mén)針對(duì)C# 5.0和.NET 4.5進(jìn)行了細(xì)致入微的修訂,是各層次.NET開(kāi)發(fā)人員的必讀之作。

作者簡(jiǎn)介

  Andrew Troelsen 世界級(jí)C#專(zhuān)家,微軟Visual C#MVP。他是著名的微軟技術(shù)咨詢(xún)企業(yè)Intertech的合伙人和副總裁,該公司的客戶(hù)包括微軟、霍尼韋爾、美國(guó)國(guó)家航空航天局等。他曾是MSDN網(wǎng)站和MacTech網(wǎng)站.NET技術(shù)帖專(zhuān)家,并經(jīng)常在業(yè)界主要技術(shù)會(huì)議上發(fā)表演講和開(kāi)設(shè)技術(shù)講座。他還是公認(rèn)的C#和.NET暢銷(xiāo)技術(shù)書(shū)作家。除本書(shū)外,他還著有ProExpression Blend 4、Pro VB 2008 and the .NET 3.5 Platform和COM and.NET Interoperability等近二十部.NET技術(shù)方面的著作。

圖書(shū)目錄

第一部分 C#與.NET平臺(tái)
第1章 .NET之道
1.1 初識(shí).NET平臺(tái)
1.2 .NET平臺(tái)構(gòu)造塊(CLR、CTS和CLS)簡(jiǎn)介
1.2.1 基礎(chǔ)類(lèi)庫(kù)的作用
1.2.2 C#的優(yōu)點(diǎn)
1.2.3 托管代碼與非托管代碼
1.3 其他支持.NET的編程語(yǔ)言
1.4 .NET程序集概覽
1.4.1 CIL的作用
1.4.2 .NET類(lèi)型元數(shù)據(jù)的作用
1.4.3 程序集清單的作用
1.5 CTS
1.5.1 CTS類(lèi)類(lèi)型
1.5.2 CTS接口類(lèi)型
1.5.3 CTS結(jié)構(gòu)類(lèi)型
1.5.4 CTS枚舉類(lèi)型
1.5.5 CTS委托類(lèi)型
1.5.6 CTS類(lèi)型成員
1.5.7 內(nèi)建的CTS數(shù)據(jù)類(lèi)型
1.6 CLS
1.7 CLR
1.8 程序集/命名空間/類(lèi)型的區(qū)別
1.8.1 Microsoft根命名空間的作用
1.8.2 以編程方式訪問(wèn)命名空間
1.8.3 引用外部程序集
1.9 使用ildasm.exe探索程序集
1.9.1 查看CIL代碼
1.9.2 查看類(lèi)型元數(shù)據(jù)
1.9.3 查看程序集元數(shù)據(jù)(即清單)
1.10 .NET的平臺(tái)無(wú)關(guān)性
1.11 Windows 8應(yīng)用程序簡(jiǎn)介
1.11.1 構(gòu)建Windows 8應(yīng)用程序
1.11.2 .NET在Windows 8中的作用
1.12 小結(jié)
第2章 構(gòu)建C#應(yīng)用程序
2.1 .NET Framework 4.5 SDK的作用
2.2 用csc.exe構(gòu)建C#應(yīng)用程序
2.2.1 指定輸入輸出目標(biāo)
2.2.2 引用外部程序集
2.2.3 引用多個(gè)外部程序集
2.2.4 編譯多個(gè)源文件
2.2.5 使用C#響應(yīng)文件
2.3 使用Notepad++構(gòu)建.NET應(yīng)用程序
2.4 使用SharpDevelop構(gòu)建.NET應(yīng)用程序
2.5 使用Visual C# Express構(gòu)建.NET應(yīng)用程序
2.6 使用Visual Studio構(gòu)建.NET應(yīng)用程序
2.6.1 Visual Studio的獨(dú)特功能
2.6.2 使用New Project對(duì)話框指向.NET Framework
2.6.3 解決方案資源管理器
2.6.4 Class View工具
2.6.5 Object Browser工具
2.6.6 集成對(duì)代碼重構(gòu)的支持
2.6.7 代碼擴(kuò)展和圍繞技術(shù)
2.6.8 可視化Class Designer
2.6.9 集成的.NET Framework 4.5 SDK文檔系統(tǒng)
2.7 小結(jié)
第二部分 C#核心編程結(jié)構(gòu)
第3章 C#核心編程結(jié)構(gòu)Ⅰ
3.1 一個(gè)簡(jiǎn)單的C#程序
3.1.1 Main方法的其他形式
3.1.2 指定應(yīng)用程序錯(cuò)誤代碼
3.1.3 處理命令行參數(shù)
3.1.4 使用Visual Studio指定命令行參數(shù)
3.2 有趣的題外話:System.Environment類(lèi)的其他成員
3.3 System.Console類(lèi)
3.3.1 使用Console類(lèi)進(jìn)行基本的輸入和輸出
3.3.2 格式化控制臺(tái)輸出
3.3.3 格式化數(shù)值數(shù)據(jù)
3.3.4 在控制臺(tái)應(yīng)用程序外格式化數(shù)值數(shù)據(jù)
3.4 系統(tǒng)數(shù)據(jù)類(lèi)型和相應(yīng)的C#關(guān)鍵字
3.4.1 變量聲明和初始化
3.4.2 內(nèi)建數(shù)據(jù)類(lèi)型與new操作符
3.4.3 數(shù)據(jù)類(lèi)型類(lèi)的層次結(jié)構(gòu)
3.4.4 數(shù)值數(shù)據(jù)類(lèi)型的成員
3.4.5 System.Boolean的成員
3.4.6 System.Char的成員
3.4.7 從字符串?dāng)?shù)據(jù)中解析數(shù)值
3.4.8 System.DateTime和System.TimeSpan
3.4.9 System.Numerics.dll程序集
3.5 使用字符串?dāng)?shù)據(jù)
3.5.1 基本的字符串操作
3.5.2 字符串拼接
3.5.3 轉(zhuǎn)義字符
3.5.4 定義逐字字符串
3.5.5 字符串和相等性
3.5.6 字符串是不可變的
3.5.7 System.Text.StringBuilder類(lèi)型
3.6 窄化和寬化數(shù)據(jù)類(lèi)型轉(zhuǎn)換
3.6.1 checked關(guān)鍵字
3.6.2 設(shè)定項(xiàng)目級(jí)別的溢出檢測(cè)
3.6.3 unchecked關(guān)鍵字
3.7 隱式類(lèi)型本地變量
3.7.1 隱式類(lèi)型變量的限制
3.7.2 隱式類(lèi)型數(shù)據(jù)是強(qiáng)類(lèi)型數(shù)據(jù)
3.7.3 隱式類(lèi)型本地變量的用途
3.8 C#迭代結(jié)構(gòu)
3.8.1 for循環(huán)
3.8.2 foreach循環(huán)
3.8.3 while和do/while循環(huán)結(jié)構(gòu)
3.9 條件結(jié)構(gòu)和關(guān)系/相等操作符
3.9.1 if/else語(yǔ)句
3.9.2 關(guān)系/相等操作符
3.9.3 邏輯操作符
3.9.4 switch語(yǔ)句
3.10 小結(jié)
第4章 C#核心編程結(jié)構(gòu)Ⅱ
4.1 方法和參數(shù)修飾符
4.1.1 默認(rèn)的參數(shù)傳遞行為
4.1.2 out修飾符
4.1.3 ref修飾符
4.1.4 params修飾符
4.1.5 定義可選參數(shù)
4.1.6 使用命名參數(shù)調(diào)用方法
4.1.7 成員重載
4.2 C#數(shù)組
4.2.1 C#數(shù)組初始化語(yǔ)法
4.2.2 隱式類(lèi)型本地?cái)?shù)組
4.2.3 定義object數(shù)組
4.2.4 使用多維數(shù)組
4.2.5 數(shù)組作為參數(shù)(和返回值)
4.2.6 System.Array基類(lèi)
4.3 枚舉類(lèi)型
4.3.1 控制枚舉的底層存儲(chǔ)
4.3.2 聲明枚舉變量
4.3.3 System.Enum類(lèi)型
4.3.4 動(dòng)態(tài)獲取枚舉的名稱(chēng)/值對(duì)
4.4 結(jié)構(gòu)類(lèi)型
4.5 值類(lèi)型和引用類(lèi)型
4.5.1 值類(lèi)型、引用類(lèi)型和賦值操作符
4.5.2 包含引用類(lèi)型的值類(lèi)型
4.5.3 按值傳遞引用類(lèi)型
4.5.4 按引用傳遞引用類(lèi)型
4.5.5 值類(lèi)型和引用類(lèi)型:最后的細(xì)節(jié)
4.6 C#可空類(lèi)型
4.6.1 使用可空類(lèi)型
4.6.2 ??操作符
4.7 小結(jié)
第三部分 C#面向?qū)ο缶幊?br />第5章 封裝
5.1 C#類(lèi)類(lèi)型
5.2 構(gòu)造函數(shù)
5.2.1 默認(rèn)構(gòu)造函數(shù)的作用
5.2.2 定義自定義的構(gòu)造函數(shù)
5.2.3 再談默認(rèn)構(gòu)造函數(shù)
5.3 this關(guān)鍵字的作用
5.3.1 使用this進(jìn)行串聯(lián)構(gòu)造函數(shù)調(diào)用
5.3.2 觀察構(gòu)造函數(shù)流程
5.3.3 再談可選參數(shù)
5.4 static關(guān)鍵字
5.4.1 定義靜態(tài)數(shù)據(jù)
5.4.2 定義靜態(tài)方法
5.4.3 定義靜態(tài)構(gòu)造函數(shù)
5.4.4 定義靜態(tài)類(lèi)
5.5 定義OOP的支柱
5.5.1 封裝的作用
5.5.2 繼承的作用
5.5.3 多態(tài)的作用
5.6 C#訪問(wèn)修飾符
5.6.1 默認(rèn)的訪問(wèn)修飾符
5.6.2 訪問(wèn)修飾符和嵌套類(lèi)型
5.7 第一個(gè)支柱:C#的封裝服務(wù)
5.7.1 使用傳統(tǒng)的訪問(wèn)方法和修改方法執(zhí)行封裝
5.7.2 使用.NET屬性進(jìn)行封裝
5.7.3 使用類(lèi)的屬性
5.7.4 只讀和只寫(xiě)屬性
5.7.5 靜態(tài)屬性
5.8 自動(dòng)屬性
5.8.1 與自動(dòng)屬性交互
5.8.2 關(guān)于自動(dòng)屬性和默認(rèn)值
5.9 對(duì)象初始化語(yǔ)法
5.9.1 使用初始化語(yǔ)法調(diào)用自定義構(gòu)造函數(shù)
5.9.2 初始化內(nèi)部類(lèi)型
5.10 常量數(shù)據(jù)
5.10.1 只讀字段
5.10.2 靜態(tài)只讀字段
5.11 分部類(lèi)型
5.12 小結(jié)
第6章 繼承和多態(tài)
6.1 繼承的基本機(jī)制
6.1.1 指定既有類(lèi)的父類(lèi)
6.1.2 多個(gè)基類(lèi)
6.1.3 sealed關(guān)鍵字
6.2 回顧Visual Studio類(lèi)關(guān)系圖
6.3 OOP的第二個(gè)支柱:繼承
6.3.1 使用base關(guān)鍵字控制基類(lèi)的創(chuàng)建
6.3.2 家族的秘密:protected關(guān)鍵字
6.3.3 增加密封類(lèi)
6.4 包含/委托編程
6.5 OOP的第三個(gè)支柱:C#的多態(tài)支持
6.5.1 virtual和override關(guān)鍵字
6.5.2 使用Visual Studio IDE重寫(xiě)虛方法
6.5.3 密封虛成員
6.5.4 抽象類(lèi)
6.5.5 構(gòu)建多態(tài)接口
6.5.6 成員投影
6.6 基類(lèi)/派生類(lèi)的轉(zhuǎn)換規(guī)則
6.6.1 C#的as關(guān)鍵字
6.6.2 C#的is關(guān)鍵字
6.7 超級(jí)父類(lèi):System.Object
6.7.1 重寫(xiě)System.Object.ToString
6.7.2 重寫(xiě)System.Object.Equals
6.7.3 重寫(xiě)System.Object.GetHashCode
6.7.4 測(cè)試修改后的Person類(lèi)
6.7.5 System.Object的靜態(tài)成員
6.8 小結(jié)
第7章 結(jié)構(gòu)化異常處理
7.1 錯(cuò)誤、bug與異常
7.2 .NET異常處理的作用
7.2.1 .NET異常處理的四要素
7.2.2 System.Exception基類(lèi)
7.3 最簡(jiǎn)單的例子
7.3.1 引發(fā)普通的異常
7.3.2 捕獲異常
7.4 配置異常的狀態(tài)
7.4.1 TargetSite屬性
7.4.2 StackTrace屬性
7.4.3 HelpLink屬性
7.4.4 Data屬性
7.5 系統(tǒng)級(jí)異常
7.6 應(yīng)用程序級(jí)異常
7.6.1 構(gòu)建自定義異常,第一部分
7.6.2 構(gòu)建自定義異常,第二部分
7.6.3 構(gòu)建自定義異常,第三部分
7.7 處理多個(gè)異常
7.7.1 通用的catch語(yǔ)句
7.7.2 再次引發(fā)異常
7.7.3 內(nèi)部異常
7.7.4 finally塊
7.8 誰(shuí)在引發(fā)什么異常
7.9 未處理異常的后果
7.10 使用Visual Studio調(diào)試未處理的異常
7.11 小結(jié)
第8章 接口
8.1 接口類(lèi)型
8.2 定義自定義接口
8.3 實(shí)現(xiàn)接口
8.4 在對(duì)象級(jí)別調(diào)用接口成員
8.4.1 獲取接口引用:as關(guān)鍵字
8.4.2 獲取接口引用:is關(guān)鍵字
8.5 接口作為參數(shù)
8.6 接口作為返回值
8.7 接口類(lèi)型數(shù)組
8.8 使用Visual Studio實(shí)現(xiàn)接口
8.9 顯式接口實(shí)現(xiàn)
8.10 設(shè)計(jì)接口層次結(jié)構(gòu)
8.11 構(gòu)建可枚舉類(lèi)型(IEnumerable和IEnumerator)
8.11.1 用yield關(guān)鍵字構(gòu)建迭代器方法
8.11.2 構(gòu)建命名迭代器
8.12 構(gòu)建可克隆的對(duì)象(ICloneable)
8.13 構(gòu)建可比較的對(duì)象(IComparable)
8.13.1 指定多個(gè)排序順序
8.13.2 自定義屬性、自定義排序類(lèi)型
8.14 小結(jié)
第四部分 高級(jí)C#編程結(jié)構(gòu)
第9章 集合與泛型
9.1 集合類(lèi)的動(dòng)機(jī)
9.1.1 System.Collections命名空間
9.1.2 System.Collections.Specialized命名空間
9.2 非泛型集合的問(wèn)題
9.2.1 性能問(wèn)題
9.2.2 類(lèi)型安全問(wèn)題
9.2.3 初識(shí)泛型集合
9.3 泛型類(lèi)型參數(shù)的作用
9.3.1 為泛型類(lèi)/結(jié)構(gòu)指定類(lèi)型參數(shù)
9.3.2 為泛型成員指定類(lèi)型參數(shù)
9.3.3 為泛型接口指定類(lèi)型參數(shù)
9.4 System.Collections.Generic命名空間
9.4.1 集合初始化語(yǔ)法
9.4.2 使用List類(lèi)
9.4.3 使用Stack類(lèi)
9.4.4 使用Queue類(lèi)
9.4.5 使用SortedSet類(lèi)
9.5 System.Collections.ObjectModel命名空間
9.6 創(chuàng)建自定義泛型方法
9.7 創(chuàng)建自定義泛型結(jié)構(gòu)和類(lèi)
9.8 類(lèi)型參數(shù)的約束
9.8.1 使用where關(guān)鍵字的示例
9.8.2 操作符約束的不足
9.9 小結(jié)
第10章 委托、事件和Lambda表達(dá)式
10.1 .NET委托類(lèi)型
10.1.1 在C#中定義委托類(lèi)型
10.1.2 System.MulticastDelegate與System.Delegate基類(lèi)
10.2 最簡(jiǎn)單的委托示例
10.3 使用委托發(fā)送對(duì)象狀態(tài)通知
10.3.1 支持多路廣播
10.3.2 從委托的調(diào)用列表中移除成員
10.3.3 方法組轉(zhuǎn)換語(yǔ)法
10.4 泛型委托
10.5 C#事件
10.5.1 event關(guān)鍵字
10.5.2 揭開(kāi)事件的神秘面紗
10.5.3 監(jiān)聽(tīng)傳入的事件
10.5.4 使用Visual Studio簡(jiǎn)化事件注冊(cè)
10.5.5 創(chuàng)建自定義的事件參數(shù)
10.5.6 泛型EventHandler委托
10.6 C#匿名方法
10.7 Lambda表達(dá)式
10.7.1 剖析Lambda表達(dá)式
10.7.2 使用多個(gè)語(yǔ)句處理參數(shù)
10.7.3 含有多個(gè)(或零個(gè))參數(shù)的Lambda表達(dá)式
10.7.4 使用Lambda表達(dá)式重新編寫(xiě)CarEvents示例
10.8 小結(jié)
第11章 高級(jí)C#語(yǔ)言特性
11.1 索引器方法
11.1.1 使用字符串值索引對(duì)象
11.1.2 重載索引器方法
11.1.3 多維的索引器
11.1.4 在接口類(lèi)型上定義索引器
11.2 操作符重載
11.2.1 重載二元操作符
11.2.2 +=與-=操作符
11.2.3 重載一元操作符
11.2.4 重載相等操作符
11.2.5 重載比較操作符
11.2.6 操作符重載的最后思考
11.3 自定義類(lèi)型轉(zhuǎn)換
11.3.1 回顧:數(shù)值轉(zhuǎn)換
11.3.2 回顧:相關(guān)的類(lèi)類(lèi)型間的轉(zhuǎn)換
11.3.3 創(chuàng)建自定義轉(zhuǎn)換例程
11.3.4 Square類(lèi)型的其他顯式轉(zhuǎn)換
11.3.5 定義隱式轉(zhuǎn)換例程
11.4 擴(kuò)展方法
11.4.1 定義擴(kuò)展方法
11.4.2 在實(shí)例層次上調(diào)用擴(kuò)展方法
11.4.3 導(dǎo)入擴(kuò)展方法
11.4.4 擴(kuò)展方法的智能感知
11.4.5 擴(kuò)展實(shí)現(xiàn)了指定接口的類(lèi)型
11.5 匿名類(lèi)型
11.5.1 定義匿名類(lèi)型
11.5.2 匿名類(lèi)型的內(nèi)部表示方式
11.5.3 方法ToString和GetHashCode的實(shí)現(xiàn)
11.5.4 匿名類(lèi)型的相等語(yǔ)義
11.5.5 包含匿名類(lèi)型的匿名類(lèi)型
11.6 指針類(lèi)型
11.6.1 unsafe關(guān)鍵字
11.6.2 *和&操作符
11.6.3 不安全(與安全)交換功能
11.6.4 通過(guò)指針訪問(wèn)字段
11.6.5 stackalloc關(guān)鍵字
11.6.6 使用fixed關(guān)鍵字固定類(lèi)型
11.6.7 sizeof關(guān)鍵字
11.7 小結(jié)
第12章 LINQ to Object
12.1 LINQ特有的編程結(jié)構(gòu)
12.1.1 隱式類(lèi)型本地變量
12.1.2 對(duì)象和集合初始化語(yǔ)法
12.1.3 Lambda表達(dá)式
12.1.4 擴(kuò)展方法
12.1.5 匿名類(lèi)型
12.2 LINQ的作用
12.2.1 LINQ表達(dá)式是強(qiáng)類(lèi)型的
12.2.2 核心LINQ程序集
12.3 將LINQ查詢(xún)應(yīng)用于原始數(shù)組
12.3.1 再一次,不使用LINQ
12.3.2 反射LINQ結(jié)果集
12.3.3 LINQ和隱式類(lèi)型本地變量
12.3.4 LINQ和擴(kuò)展方法
12.3.5 延遲執(zhí)行的作用
12.3.6 立即執(zhí)行的作用
12.4 返回LINQ查詢(xún)的結(jié)果
12.5 將LINQ查詢(xún)應(yīng)用到集合對(duì)象
12.5.1 訪問(wèn)包含的子對(duì)象
12.5.2 將LINQ查詢(xún)應(yīng)用于非泛型集合
12.5.3 使用OfType篩選數(shù)據(jù)
12.6 C# LINQ查詢(xún)操作符
12.6.1 基本的選擇語(yǔ)法
12.6.2 獲取數(shù)據(jù)子集
12.6.3 投影新數(shù)據(jù)類(lèi)型
12.6.4 使用Enumerable獲取總數(shù)
12.6.5 反轉(zhuǎn)結(jié)果集
12.6.6 對(duì)表達(dá)式進(jìn)行排序
12.6.7 維恩圖工具
12.6.8 移除重復(fù)
12.6.9 LINQ聚合操作
12.7 LINQ查詢(xún)語(yǔ)句的內(nèi)部表示
12.7.1 用查詢(xún)操作符建立查詢(xún)表達(dá)式(復(fù)習(xí))
12.7.2 使用Enumerable類(lèi)型和Lambda表達(dá)式來(lái)建立查詢(xún)表達(dá)式
12.7.3 使用Enumerable類(lèi)型和匿名方法來(lái)建立查詢(xún)表達(dá)式
12.7.4 用Enumerable類(lèi)型和原始委托建立查詢(xún)表達(dá)式
12.8 小結(jié)
第13章 對(duì)象的生命周期
13.1 類(lèi)、對(duì)象和引用
13.2 對(duì)象生命周期的基礎(chǔ)
13.2.1 CIL的new指令
13.2.2 將對(duì)象引用設(shè)置為空
13.3 應(yīng)用程序根的作用
13.4 對(duì)象的代
13.5 .NET 1.0至.NET 3.5的并發(fā)垃圾回收
13.6 .NET 4.0及后續(xù)版本
13.7 System.GC類(lèi)型
13.8 構(gòu)建可終結(jié)對(duì)象
13.8.1 重寫(xiě)System.Object.Finalize
13.8.2 終結(jié)過(guò)程的細(xì)節(jié)
13.9 構(gòu)建可處置對(duì)象
13.10 構(gòu)建可終結(jié)類(lèi)型和可處置類(lèi)型
13.11 延遲對(duì)象實(shí)例化
13.12 小結(jié)
第五部分 用.NET程序集編程
第14章 .NET程序集入門(mén)
14.1 定義自定義命名空間
14.1.1 使用完全限定名解決命名沖突
14.1.2 使用別名解決命名沖突
14.1.3 創(chuàng)建嵌套的命名空間
14.1.4 Visual Studio 的默認(rèn)命名空間
14.2 .NET程序集的作用
14.2.1 程序集促進(jìn)代碼重用
14.2.2 程序集確定類(lèi)型邊界
14.2.3 程序集是可版本化的單元
14.2.4 程序集是自描述的
14.2.5 程序集是可配置的
14.3 .NET程序集的格式
14.3.1 Windows文件首部
14.3.2 CLR文件首部
14.3.3 CIL代碼、類(lèi)型元數(shù)據(jù)和程序集清單
14.3.4 可選的程序集資源
14.4 構(gòu)建和使用自定義類(lèi)庫(kù)
14.4.1 清單
14.4.2 CIL
14.4.3 類(lèi)型元數(shù)據(jù)
14.4.4 構(gòu)建C#客戶(hù)端應(yīng)用程序
14.4.5 構(gòu)建Visual Basic客戶(hù)端應(yīng)用程序
14.4.6 實(shí)現(xiàn)跨語(yǔ)言繼承
14.5 私有程序集
14.5.1 私有程序集的標(biāo)識(shí)
14.5.2 探測(cè)過(guò)程
14.5.3 配置私有程序集
14.5.4 App.Config文件
14.6 共享程序集
14.6.1 全局程序集緩存
14.6.2 強(qiáng)名稱(chēng)
14.6.3 在命令行生成強(qiáng)名稱(chēng)
14.6.4 使用Visual Studio為程序集賦予強(qiáng)名稱(chēng)
14.6.5 在GAC中安裝強(qiáng)名稱(chēng)的程序集
14.7 使用共享程序集
14.8 配置共享程序集
14.8.1 凍結(jié)當(dāng)前的共享程序集
14.8.2 構(gòu)建共享程序集2.0.0.0版本
14.8.3 動(dòng)態(tài)重定向到共享程序集的特定版本
14.9 發(fā)行者策略程序集
14.10 元素
14.11 System.Configuration命名空間
14.12 配置文件架構(gòu)文檔
14.13 小結(jié)
第15章 類(lèi)型反射、晚期綁定和基于特性的編程
15.1 類(lèi)型元數(shù)據(jù)的必要性
15.1.1 查看(部分)EngineState枚舉的元數(shù)據(jù)
15.1.2 查看(部分)Car類(lèi)型的元數(shù)據(jù)
15.1.3 研究TypeRef
15.1.4 記錄定義的程序集
15.1.5 記錄引用的程序集
15.1.6 記錄字符串字面量
15.2 反射
15.2.1 System.Type類(lèi)
15.2.2 使用System.Object.GetType得到Type引用
15.2.3 使用typeof得到Type引用
15.2.4 使用System.Type.GetType得到Type引用
15.3 構(gòu)建自定義的元數(shù)據(jù)查看器
15.3.1 反射方法
15.3.2 反射字段和屬性
15.3.3 反射實(shí)現(xiàn)的接口
15.3.4 顯示其他信息
15.3.5 實(shí)現(xiàn)Main
15.3.6 反射泛型類(lèi)型
15.3.7 反射方法參數(shù)和返回值
15.4 動(dòng)態(tài)加載程序集
15.5 反射共享程序集
15.6 晚期綁定
15.6.1 System.Activator類(lèi)
15.6.2 調(diào)用沒(méi)有參數(shù)的方法
15.6.3 調(diào)用有參數(shù)的方法
15.7 .NET特性的作用
15.7.1 特性的使用者
15.7.2 在C#中使用特性
15.7.3 C#特性簡(jiǎn)化符號(hào)
15.7.4 為特性指定構(gòu)造參數(shù)
15.7.5 Obsolete特性
15.8 構(gòu)建自定義特性
15.8.1 應(yīng)用自定義特性
15.8.2 命名屬性語(yǔ)法
15.8.3 限制特性使用
15.9 程序集級(jí)別特性
15.10 使用早期綁定反射特性
15.11 使用晚期綁定反射特性
15.12 反射、晚期綁定和自定義特性的使用背景
15.13 構(gòu)建可擴(kuò)展的應(yīng)用程序
15.13.1 構(gòu)建CommonSnappable-Types.dll
15.13.2 構(gòu)建C#插件
15.13.3 構(gòu)建Visual Basic插件
15.13.4 構(gòu)建可擴(kuò)展的Windows Forms應(yīng)用程序
15.14 小結(jié)
第16章 動(dòng)態(tài)類(lèi)型和動(dòng)態(tài)語(yǔ)言運(yùn)行時(shí)
16.1 dynamic關(guān)鍵字的作用
16.1.1 調(diào)用動(dòng)態(tài)聲明的數(shù)據(jù)的成員
16.1.2 Microsoft.CSharp.dll程序集的作用
16.1.3 dynamic關(guān)鍵字的作用域
16.1.4 dynamic關(guān)鍵字的限制
16.1.5 dynamic關(guān)鍵字的實(shí)際用途
16.2 DLR的作用
16.2.1 表達(dá)式樹(shù)的作用
16.2.2 System.Dynamic命名空間的作用
16.2.3 表達(dá)式樹(shù)的動(dòng)態(tài)運(yùn)行時(shí)查找
16.3 使用動(dòng)態(tài)類(lèi)型簡(jiǎn)化后期綁定調(diào)用
16.4 使用動(dòng)態(tài)數(shù)據(jù)簡(jiǎn)化COM互操作
16.4.1 主互操作程序集的作用
16.4.2 嵌入互操作元數(shù)據(jù)
16.4.3 普通COM互操作的難點(diǎn)
16.5 使用C# 動(dòng)態(tài)數(shù)據(jù)進(jìn)行COM互操作
16.6 不使用C# 動(dòng)態(tài)數(shù)據(jù)進(jìn)行COM互操作
16.7 小結(jié)
第17章 進(jìn)程、應(yīng)用程序域和對(duì)象上下文
17.1 Windows進(jìn)程的作用
17.2 .NET平臺(tái)下與進(jìn)程進(jìn)行交互
17.2.1 列舉運(yùn)行中的進(jìn)程
17.2.2 特定的進(jìn)程
17.2.3 進(jìn)程的線程集合
17.2.4 進(jìn)程中的模塊集合
17.2.5 以編程方式啟動(dòng)或結(jié)束進(jìn)程
17.2.6 使用ProcessStartInfo類(lèi)控制進(jìn)程的啟動(dòng)
17.3 .NET應(yīng)用程序域
17.4 與默認(rèn)應(yīng)用程序域進(jìn)行交互
17.4.1 枚舉加載的程序集
17.4.2 接收程序集加載通知
17.5 創(chuàng)建新的應(yīng)用程序域
17.5.1 在自定義應(yīng)用程序域中加載程序集
17.5.2 以編程方式卸載應(yīng)用程序域
17.6 對(duì)象上下文邊界
17.6.1 上下文靈活和上下文綁定類(lèi)型
17.6.2 定義上下文綁定對(duì)象
17.6.3 研究對(duì)象的上下文
17.7 進(jìn)程、應(yīng)用程序域和上下文小結(jié)
17.8 小結(jié)
第18章 CIL和動(dòng)態(tài)程序集的作用
18.1 學(xué)習(xí)CIL語(yǔ)法的原因
18.2 CIL指令、特性和操作碼
18.2.1 CIL指令的作用
18.2.2 CIL特性的作用
18.2.3 CIL操作碼的作用
18.2.4 區(qū)別CIL操作碼和CIL助記符
18.3 入棧和出棧:CIL基于棧的本質(zhì)
18.4 正反向工程
18.4.1 CIL代碼標(biāo)簽的作用
18.4.2 與CIL交互:修改*.il文件
18.4.3 使用ilasm.exe編譯CIL代碼
18.4.4 peverify.exe的作用
18.5 CIL指令和特性
18.5.1 在CIL中指定外部引用程序集
18.5.2 在CIL中定義當(dāng)前程序集
18.5.3 在CIL中定義命名空間
18.5.4 在CIL中定義類(lèi)類(lèi)型
18.5.5 在CIL中定義和實(shí)現(xiàn)接口
18.5.6 在CIL中定義結(jié)構(gòu)
18.5.7 在CIL中定義枚舉
18.5.8 在CIL中定義泛型
18.5.9 編譯CILTypes.il文件
18.6 .NET基礎(chǔ)類(lèi)庫(kù)、C#和CIL數(shù)據(jù)類(lèi)型的映射
18.7 在CIL中定義類(lèi)型成員
18.7.1 在CIL中定義數(shù)據(jù)字段
18.7.2 在CIL中定義類(lèi)型的構(gòu)造函數(shù)
18.7.3 在CIL中定義屬性
18.7.4 定義成員參數(shù)
18.8 剖析CIL操作碼
18.8.1 .maxstack指令
18.8.2 在CIL中聲明本地變量
18.8.3 在CIL中映射參數(shù)到本地變量
18.8.4 this隱式引用
18.8.5 在CIL中使用循環(huán)結(jié)構(gòu)
18.9 使用CIL構(gòu)建.NET程序集
18.9.1 構(gòu)建CILCars.dll
18.9.2 構(gòu)建CILCarClient.exe
18.10 動(dòng)態(tài)程序集
18.10.1 System.Reflection.Emit命名空間
18.10.2 System.Reflection.Emit.ILGenerator的作用
18.10.3 產(chǎn)生動(dòng)態(tài)的程序集
18.10.4 產(chǎn)生程序集和模塊集
18.10.5 ModuleBuilder類(lèi)型的作用
18.10.6 產(chǎn)生HelloClass類(lèi)型和字符串成員變量
18.10.7 產(chǎn)生構(gòu)造函數(shù)
18.10.8 產(chǎn)生SayHello方法
18.10.9 使用動(dòng)態(tài)產(chǎn)生的程序集
18.11 小結(jié)
第六部分 .NET基礎(chǔ)類(lèi)庫(kù)
第19章 多線程、并行和異步編程
19.1 進(jìn)程、應(yīng)用程序域、上下文及線程之間的關(guān)系
19.1.1 并發(fā)問(wèn)題
19.1.2 線程同步的作用
19.2 .NET委托的簡(jiǎn)短回顧
19.3 委托的異步性
19.3.1 BeginInvoke和EndInvoke方法
19.3.2 System.IAsyncResult接口
19.4 異步調(diào)用方法
19.4.1 同步調(diào)用線程
19.4.2 AsyncCallback委托的作用
19.4.3 AsyncResult類(lèi)的作用
19.4.4 傳遞和接收自定義狀態(tài)數(shù)據(jù)
19.5 System.Threading命名空間
19.6 System.Threading.Thread類(lèi)
19.6.1 獲得當(dāng)前執(zhí)行線程的統(tǒng)計(jì)信息
19.6.2 Name屬性
19.6.3 Priority屬性
19.7 手工創(chuàng)建次線程
19.7.1 使用ThreadStart委托
19.7.2 使用ParameterizedThreadStart委托
19.7.3 AutoResetEvent類(lèi)
19.7.4 前臺(tái)線程和后臺(tái)線程
19.8 并發(fā)問(wèn)題
19.8.1 使用C#的lock關(guān)鍵字進(jìn)行同步
19.8.2 使用System.Threading.Monitor類(lèi)型進(jìn)行同步
19.8.3 使用System.Threading.Interlocked類(lèi)型進(jìn)行同步
19.8.4 使用[Synchronization]特性進(jìn)行同步
19.9 使用TimerCallback編程
19.10 CLR線程池
19.11 使用任務(wù)并行庫(kù)進(jìn)行并行編程
19.11.1 任務(wù)并行庫(kù)API
19.11.2 Parallel類(lèi)的作用
19.11.3 使用Parallel類(lèi)的數(shù)據(jù)并行
19.11.4 在次線程中訪問(wèn)UI元素
19.11.5 Task類(lèi)
19.11.6 處理取消請(qǐng)求
19.11.7 使用并行類(lèi)的任務(wù)并行
19.12 并行LINQ查詢(xún)(PLINQ)
19.12.1 使用PLINQ查詢(xún)
19.12.2 取消PLINQ查詢(xún)
19.13 .NET 4.5下的異步調(diào)用
19.13.1 C# async和await關(guān)鍵字初探
19.13.2 異步方法的命名約定
19.13.3 返回void的異步方法
19.13.4 具有多個(gè)await的異步方法
19.13.5 用async/await改進(jìn)AddWithThreads示例
19.14 小結(jié)
第20章 文件輸入輸出和對(duì)象序列化
20.1 研究System.IO命名空間
20.2 Directory(Info)和File(Info)類(lèi)型
20.3 使用DirectoryInfo類(lèi)型
20.3.1 使用DirectoryInfo類(lèi)型枚舉出文件
20.3.2 使用DirectoryInfo類(lèi)型創(chuàng)建子目錄
20.4 使用Directory類(lèi)型
20.5 使用DriveInfo類(lèi)類(lèi)型
20.6 使用FileInfo類(lèi)
20.6.1 FileInfo.Create方法
20.6.2 FileInfo.Open方法
20.6.3 FileInfo.OpenRead和FileInfo.OpenWrite方法
20.6.4 FileInfo.OpenText方法
20.6.5 FileInfo.CreateText和FileInfo.AppendText方法
20.7 使用File類(lèi)型
20.8 Stream抽象類(lèi)
20.9 使用StreamWriter和StreamReader類(lèi)型
20.9.1 寫(xiě)文本文件
20.9.2 讀文本文件
20.9.3 直接創(chuàng)建StreamWriter/StreamReader類(lèi)型
20.10 使用StringWriter和StringReader類(lèi)型
20.11 使用BinaryWriter和BinaryReader
20.12 以編程方式“觀察”文件
20.13 對(duì)象序列化
20.14 為序列化配置對(duì)象
20.14.1 定義可序列化的類(lèi)型
20.14.2 公共字段、私有字段和公共屬性
20.15 選擇序列化格式化程序
20.15.1 IFormatter和IRemoting-Formatting接口
20.15.2 在格式化程序中的類(lèi)型保真
20.16 使用BinaryFormatter序列化對(duì)象
20.17 使用SoapFormatter序列化對(duì)象
20.18 使用XmlSerializer序列化對(duì)象
20.19 序列化對(duì)象集合
20.20 自定義Soap/Binary序列化過(guò)程
20.20.1 深入了解對(duì)象序列化
20.20.2 使用ISerializable自定義序列化
20.20.3 使用特性定制序列化
20.21 小結(jié)
第21章 ADO.NET之一:連接層
21.1 ADO.NET的宏觀定義
21.2 ADO.NET數(shù)據(jù)提供程序
21.2.1 微軟提供的ADO.NET數(shù)據(jù)提供程序
21.2.2 關(guān)于System.Data.Oracle-Client.dll
21.2.3 選擇第三方的數(shù)據(jù)提供程序
21.3 其他的ADO.NET命名空間
21.4 System.Data命名空間的類(lèi)型
21.4.1 IDbConnection接口的作用
21.4.2 IDbTransaction接口的作用
21.4.3 IDbCommand接口的作用
21.4.4 IDbDataParameter和IDataParameter接口的作用
21.4.5 IDbDataAdapter和IDataAdapter接口的作用
21.4.6 IDataReader和IDataRecord接口的作用
21.5 使用接口的抽象數(shù)據(jù)提供程序
21.6 創(chuàng)建AutoLot數(shù)據(jù)庫(kù)
21.6.1 創(chuàng)建Inventory表
21.6.2 為Inventory表添加測(cè)試記錄
21.6.3 編寫(xiě)GetPetName存儲(chǔ)過(guò)程
21.6.4 創(chuàng)建Customers和Orders表
21.6.5 可視化創(chuàng)建表關(guān)系
21.7 ADO.NET數(shù)據(jù)提供程序工廠模型
21.7.1 完整的數(shù)據(jù)提供程序工廠的例子
21.7.2 數(shù)據(jù)提供程序工廠模型的潛在缺陷
21.7.3 元素
21.8 ADO.NET的連接層
21.8.1 使用連接對(duì)象
21.8.2 使用ConnectionStringBuilder對(duì)象
21.8.3 使用命令對(duì)象
21.9 使用數(shù)據(jù)讀取器
21.10 構(gòu)建可重用的數(shù)據(jù)訪問(wèn)庫(kù)
21.10.1 增加連接邏輯
21.10.2 增加插入邏輯
21.10.3 增加刪除邏輯
21.10.4 增加更新邏輯
21.10.5 增加選擇邏輯
21.10.6 使用參數(shù)化的命令對(duì)象
21.10.7 執(zhí)行存儲(chǔ)過(guò)程
21.11 創(chuàng)建控制臺(tái)UI前端
21.11.1 實(shí)現(xiàn)Main方法
21.11.2 實(shí)現(xiàn)ShowInstructions方法
21.11.3 實(shí)現(xiàn)ListInventory方法
21.11.4 實(shí)現(xiàn)DeleteCar方法
21.11.5 實(shí)現(xiàn)InsertNewCar方法
21.11.6 實(shí)現(xiàn)UpdateCarPetName方法
21.11.7 實(shí)現(xiàn)LookUpPetName
21.12 數(shù)據(jù)庫(kù)事務(wù)
21.12.1 ADO.NET事務(wù)對(duì)象的主要成員
21.12.2 為AutoLot數(shù)據(jù)庫(kù)添加CreditRisks表
21.12.3 為InventoryDAL添加事物方法
21.12.4 測(cè)試數(shù)據(jù)庫(kù)事務(wù)
21.13 小結(jié)
第22章 ADO.NET之二:斷開(kāi)連接層
22.1 ADO.NET斷開(kāi)連接層
22.2 DataSet的作用
22.2.1 DataSet的主要屬性
22.2.2 DataSet的主要方法
22.2.3 構(gòu)建DataSet
22.3 使用DataColumn
22.3.1 構(gòu)建DataColumn
22.3.2 啟用自增列
22.3.3 把DataColumn對(duì)象加入DataTable
22.4 使用DataRow
22.4.1 RowState屬性
22.4.2 DataRowVersion屬性
22.5 使用DataTable
22.5.1 將DataTable插入到DataSet中
22.5.2 獲取DataSet中的數(shù)據(jù)
22.5.3 使用DataTableReader對(duì)象處理DataTable
22.5.4 序列化DataTable/DataSet對(duì)象為XML
22.5.5 以二進(jìn)制格式序列化Data-Table/DataSet對(duì)象
22.6 將DataTable對(duì)象綁定到用戶(hù)界面
22.6.1 從泛型List合成DataTable
22.6.2 從DataTable中刪除行
22.6.3 根據(jù)篩選條件選擇行
22.6.4 在DataTable中更新行
22.6.5 使用DataView類(lèi)型
22.7 使用數(shù)據(jù)適配器
22.7.1 一個(gè)簡(jiǎn)單的數(shù)據(jù)適配器示例
22.7.2 映射數(shù)據(jù)庫(kù)名稱(chēng)為友好名稱(chēng)
22.8 向AutoLotDAL.dll添加斷開(kāi)連接功能
22.8.1 定義初始類(lèi)類(lèi)型
22.8.2 使用SqlCommandBuilder來(lái)配置數(shù)據(jù)適配器
22.8.3 實(shí)現(xiàn)GetAllInventory
22.8.4 實(shí)現(xiàn)UpdateInventory
22.8.5 設(shè)置版本號(hào)
22.8.6 測(cè)試非連接的功能
22.9 多表DataSet對(duì)象和數(shù)據(jù)關(guān)系
22.9.1 建立數(shù)據(jù)適配器
22.9.2 建立表間關(guān)系
22.9.3 更新Database表
22.9.4 在關(guān)聯(lián)表中切換
22.10 Windows Forms數(shù)據(jù)庫(kù)設(shè)計(jì)器工具
22.10.1 可視化設(shè)計(jì)DataGridView
22.10.2 生成的App.config文件
22.10.3 強(qiáng)類(lèi)型的DataSet
22.10.4 強(qiáng)類(lèi)型的DataTable
22.10.5 強(qiáng)類(lèi)型的DataRow
22.10.6 強(qiáng)類(lèi)型的數(shù)據(jù)適配器
22.10.7 完成Windows Forms應(yīng)用程序
22.11 將強(qiáng)類(lèi)型的數(shù)據(jù)庫(kù)代碼隔離到類(lèi)庫(kù)中
22.11.1 查看生成的代碼
22.11.2 用生成的代碼選擇數(shù)據(jù)
22.11.3 用生成的代碼插入數(shù)據(jù)
22.11.4 用生成的代碼刪除數(shù)據(jù)
22.11.5 用生成的代碼調(diào)用存儲(chǔ)過(guò)程
22.12 LINQ to DataSet
22.12.1 DataSet Extensions庫(kù)的作用
22.12.2 獲取與LINQ兼容的DataTable
22.12.3 DataRowExtensions.Field-擴(kuò)展方法的作用
22.12.4 從LINQ查詢(xún)中生成新的DataTable
22.13 小結(jié)
第23章 ADO.NET之三:Entity Framework
23.1 Entity Framework的作用
23.1.1 實(shí)體的作用
23.1.2 Entity Framework的基礎(chǔ)知識(shí)
23.2 創(chuàng)建和分析EDM
23.3 對(duì)概念模型進(jìn)行編程
23.4 AutoLotDAL 4.0版,加入實(shí)體
23.4.1 導(dǎo)航屬性的作用
23.4.2 在LINQ to Entity查詢(xún)中使用導(dǎo)航屬性
23.4.3 調(diào)用存儲(chǔ)過(guò)程
23.5 將數(shù)據(jù)實(shí)體綁定到Windows Forms GUI
23.6 展望.NET數(shù)據(jù)訪問(wèn)API的未來(lái)
23.7 小結(jié)
第24章 LINQ to XML簡(jiǎn)介
24.1 兩個(gè)XML API的故事
24.1.1 更優(yōu)秀的DOM——LINQ to XML
24.1.2 更優(yōu)秀的LINQ to XML——VB字面量語(yǔ)法
24.2 System.Xml.Linq命名空間的成員
24.2.1 LINQ to XML的軸方法
24.2.2 奇妙的XName和XNamespace
24.3 使用XElement和XDocument
24.3.1 從數(shù)組和容器中生成文檔
24.3.2 加載和解析XML內(nèi)容
24.4 在內(nèi)存中操作XML文檔
24.4.1 構(gòu)建LINQ to XML應(yīng)用程序的UI
24.4.2 引入Inventory.xml文件
24.4.3 定義LINQ to XML輔助類(lèi)
24.4.4 將UI組裝到輔助類(lèi)
24.5 小結(jié)
第25章 WCF
25.1 各種分布式計(jì)算API
25.1.1 DCOM的作用
25.1.2 COM+/企業(yè)服務(wù)的作用
25.1.3 MSMQ的作用
25.1.4 .NET Remoting的作用
25.1.5 XML Web服務(wù)的作用
25.2 WCF的作用
25.2.1 WCF特性概覽
25.2.2 SOA概覽
25.2.3 WCF概要
25.3 WCF核心程序集
25.4 Visual Studio WCF項(xiàng)目模板
25.5 WCF應(yīng)用程序的基本構(gòu)成
25.6 WCF的ABC
25.6.1 WCF契約
25.6.2 WCF綁定
25.6.3 WCF地址
25.7 構(gòu)建WCF服務(wù)
25.7.1 [ServiceContract]特性
25.7.2 [OperationContract]特性
25.7.3 作為操作契約的服務(wù)類(lèi)型
25.8 承載WCF服務(wù)
25.8.1 在App.config文件中創(chuàng)建ABC
25.8.2 針對(duì)ServiceHost類(lèi)型進(jìn)行編程
25.8.3 指定庫(kù)地址
25.8.4 ServiceHost類(lèi)型的功能
25.8.5 元素的細(xì)節(jié)
25.8.6 啟用元數(shù)據(jù)交換
25.9 構(gòu)建WCF客戶(hù)端應(yīng)用程序
25.9.1 使用svcutil.exe生成代理代碼
25.9.2 使用Visual Studio生成代理代碼
25.9.3 配置基于TCP的綁定
25.10 簡(jiǎn)化配置設(shè)置
25.10.1 使用默認(rèn)終結(jié)點(diǎn)
25.10.2 使用多重綁定公開(kāi)單獨(dú)的WCF服務(wù)
25.10.3 修改WCF綁定的設(shè)置
25.10.4 使用默認(rèn)的MEX行為配置
25.10.5 刷新客戶(hù)端代理和選擇綁定
25.11 使用WCF服務(wù)庫(kù)項(xiàng)目模板
25.11.1 構(gòu)建簡(jiǎn)單的Math服務(wù)
25.11.2 使用WcfTestClient.exe測(cè)試WCF服務(wù)
25.11.3 使用SvcConfigEditor.exe修改配置文件
25.12 以Windows服務(wù)承載WCF服務(wù)
25.12.1 在代碼中指定ABC
25.12.2 啟用MEX
25.12.3 創(chuàng)建Windows服務(wù)安裝程序
25.12.4 安裝Windows服務(wù)
25.13 從客戶(hù)端異步調(diào)用服務(wù)
25.14 定義WCF數(shù)據(jù)契約
25.14.1 使用Web相關(guān)的WCF服務(wù)項(xiàng)目模板
25.14.2 實(shí)現(xiàn)服務(wù)契約
25.14.3 *.svc文件的作用
25.14.4 更新web.config文件
25.14.5 測(cè)試服務(wù)
25.15 小結(jié)
第26章 Windows Workflow Foundation簡(jiǎn)介
26.1 定義業(yè)務(wù)流程
26.2 構(gòu)建簡(jiǎn)單的工作流
26.3 Workflow運(yùn)行時(shí)
26.3.1 使用WorkflowInvoker承載工作流
26.3.2 使用WorkflowApplication承載工作流
26.3.3 第一個(gè)工作流示例回顧
26.4 檢查Workflow中的活動(dòng)
26.4.1 控制流活動(dòng)
26.4.2 流程圖活動(dòng)
26.4.3 消息傳遞活動(dòng)
26.4.4 狀態(tài)機(jī)活動(dòng)
26.4.5 運(yùn)行時(shí)活動(dòng)與基元活動(dòng)
26.4.6 事務(wù)活動(dòng)
26.4.7 集合活動(dòng)和錯(cuò)誤處理活動(dòng)
26.5 構(gòu)建流程圖工作流
26.5.1 在流程圖中連接活動(dòng)
26.5.2 使用InvokeMethod活動(dòng)
26.5.3 定義工作流變量
26.5.4 使用FlowDecision活動(dòng)
26.5.5 使用TerminateWorkflow活動(dòng)
26.5.6 構(gòu)建“true”條件
26.5.7 使用ForEach活動(dòng)
26.5.8 完成應(yīng)用程序
26.5.9 我們做了什么
26.6 在專(zhuān)門(mén)的DLL中構(gòu)建Squence工作流
26.6.1 定義初始化項(xiàng)目
26.6.2 引入程序集和命名空間
26.6.3 定義工作流參數(shù)
26.6.4 定義工作流變量
26.6.5 使用Assign活動(dòng)
26.6.6 使用If和Switch活動(dòng)
26.6.7 構(gòu)建自定義代碼活動(dòng)
26.7 使用工作流庫(kù)
26.8 小結(jié)
第七部分 WPF
第27章 WPF和XAML
27.1 WPF背后的動(dòng)機(jī)
27.1.1 統(tǒng)一多種不同的API
27.1.2 通過(guò)XAML將關(guān)注點(diǎn)分離
27.1.3 提供優(yōu)化的呈現(xiàn)模型
27.1.4 簡(jiǎn)化復(fù)雜的UI編程
27.2 各種形式的WPF應(yīng)用程序
27.2.1 傳統(tǒng)的桌面應(yīng)用程序
27.2.2 基于導(dǎo)航的WPF應(yīng)用程序
27.2.3 XBAP應(yīng)用程序
27.2.4 WPF/Silverlight關(guān)系
27.3 WPF程序集
27.3.1 Application類(lèi)的作用
27.3.2 Window類(lèi)的作用
27.4 創(chuàng)建不使用XAML的WPF應(yīng)用程序
27.4.1 創(chuàng)建強(qiáng)類(lèi)型的Window類(lèi)
27.4.2 創(chuàng)建簡(jiǎn)單的用戶(hù)界面
27.4.3 與應(yīng)用程序級(jí)別的數(shù)據(jù)交互
27.4.4 處理Window對(duì)象的關(guān)閉
27.4.5 攔截鼠標(biāo)事件
27.4.6 攔截鍵盤(pán)事件
27.5 僅使用XAML構(gòu)建WPF應(yīng)用程序
27.5.1 用XAML定義窗體對(duì)象
27.5.2 用XAML定義應(yīng)用對(duì)象
27.5.3 通過(guò)msbuild.exe處理XAML文件
27.6 將標(biāo)記轉(zhuǎn)換為.NET程序集
27.6.1 將窗口XAML標(biāo)記映射到C#代碼
27.6.2 BAML的作用
27.6.3 將應(yīng)用程序XAML標(biāo)記映射到C#代碼
27.6.4 XAML到程序集的過(guò)程摘要
27.7 WPF XAML語(yǔ)法
27.7.1 Kaxaml
27.7.2 XAML XML命名空間和XAML關(guān)鍵字
27.7.3 控制類(lèi)和成員變量的可見(jiàn)性
27.7.4 XAML元素、XAML特性和類(lèi)型轉(zhuǎn)換器
27.7.5 XAML屬性元素語(yǔ)法
27.7.6 XAML附加屬性
27.7.7 XAML標(biāo)記擴(kuò)展
27.8 使用代碼隱藏文件構(gòu)建WPF應(yīng)用程序
27.8.1 為MainWindow類(lèi)添加代碼文件
27.8.2 為MyApp類(lèi)添加代碼文件
27.8.3 用msbuild.exe處理代碼文件
27.9 使用Visual Studio構(gòu)建WPF應(yīng)用程序
27.9.1 WPF項(xiàng)目模板
27.9.2 工具箱和XAML設(shè)計(jì)器/編輯器
27.9.3 使用Properties窗口設(shè)置屬性
27.9.4 使用Properties窗口處理事件
27.9.5 在XAML編輯器中處理事件
27.9.6 Document Outline窗口
27.9.7 查看自動(dòng)生成的代碼文件
27.10 使用Visual Studio構(gòu)建自定義XAML編輯器
27.10.1 設(shè)計(jì)窗口的GUI
27.10.2 實(shí)現(xiàn)Loaded事件
27.10.3 實(shí)現(xiàn)按鈕的Click事件
27.10.4 實(shí)現(xiàn)Closed事件
27.10.5 測(cè)試應(yīng)用程序
27.10.6 探索WPF 文檔
27.11 小結(jié)
第28章 使用WPF控件編程
28.1 WPF核心控件概述
28.1.1 WPF Ink控件
28.1.2 WPF Document控件
28.1.3 WPF公共對(duì)話框
28.1.4 文檔中的細(xì)節(jié)
28.2 Visual Studio WPF設(shè)計(jì)器
28.2.1 在Visual Studio中使用WPF控件
28.2.2 使用Document Outline編輯器
28.3 使用面板控制內(nèi)容布局
28.3.1 在Canvas面板中放置內(nèi)容
28.3.2 在WrapPanel面板中放置內(nèi)容
28.3.3 在StackPanel面板中放置內(nèi)容
28.3.4 在Grid面板中放置內(nèi)容
28.3.5 在DockPanel面板中放置內(nèi)容
28.3.6 啟用Panel類(lèi)型的滾動(dòng)功能
28.3.7 使用Visual Studio設(shè)計(jì)器配置Panel
28.4 使用嵌套面板構(gòu)建窗口框架
28.4.1 構(gòu)建菜單系統(tǒng)
28.4.2 構(gòu)建工具條
28.4.3 構(gòu)建狀態(tài)條
28.4.4 完成UI設(shè)計(jì)
28.4.5 實(shí)現(xiàn)MouseEnter/MouseLeave事件處理程序
28.4.6 實(shí)現(xiàn)拼寫(xiě)檢查邏輯
28.5 WPF命令
28.5.1 內(nèi)置的命令對(duì)象
28.5.2 將命令連接到Command屬性
28.5.3 將命令連接到任意行為
28.5.4 使用Open和Save命令
28.6 深入了解WPF API和控件
28.7 構(gòu)建Ink API選項(xiàng)卡
28.7.1 設(shè)計(jì)工具條
28.7.2 RadioButton控件
28.7.3 處理Ink API選項(xiàng)卡的事件
28.7.4 InkCanvas控件
28.7.5 ComboBox控件
28.7.6 保存、加載和清除InkCanvas數(shù)據(jù)
28.8 Documents API
28.8.1 塊元素和內(nèi)聯(lián)元素
28.8.2 文檔布局管理器
28.9 構(gòu)建Documents選項(xiàng)卡
28.9.1 使用代碼填充FlowDocument
28.9.2 啟用批注和便簽
28.9.3 保存和加載流文檔
28.10 WPF數(shù)據(jù)綁定模型
28.10.1 構(gòu)建Data Binding選項(xiàng)卡
28.10.2 使用Visual Studio建立數(shù)據(jù)綁定
28.10.3 DataContext屬性
28.10.4 使用IValueConverter進(jìn)行數(shù)據(jù)轉(zhuǎn)換
28.10.5 在代碼中建立數(shù)據(jù)綁定
28.10.6 構(gòu)建DataGrid選項(xiàng)卡
28.11 小結(jié)
第29章 WPF圖形呈現(xiàn)服務(wù)
29.1 理解WPF的圖形呈現(xiàn)服務(wù)
29.2 使用形狀呈現(xiàn)圖形數(shù)據(jù)
29.2.1 在畫(huà)布中添加矩形、橢圓形和線條
29.2.2 在畫(huà)布中移除矩形、圓形和線條
29.2.3 折線和多邊形
29.2.4 路徑
29.3 WPF畫(huà)刷和畫(huà)筆
29.3.1 使用Visual Studio配置畫(huà)刷
29.3.2 在代碼中配置畫(huà)刷
29.3.3 配置畫(huà)筆
29.4 圖形變換
29.4.1 變換概覽
29.4.2 變換Canvas數(shù)據(jù)
29.5 使用Visual Studio變換編輯器
29.5.1 構(gòu)建初始布局
29.5.2 在設(shè)計(jì)時(shí)應(yīng)用變換
29.5.3 在代碼中變換畫(huà)布
29.6 使用繪圖和幾何圖形呈現(xiàn)圖形數(shù)據(jù)
29.6.1 使用幾何圖形構(gòu)建DrawingBrush
29.6.2 用DrawingBrush進(jìn)行繪畫(huà)
29.6.3 在DrawingImage中使用繪圖類(lèi)型
29.7 Expression Design的作用
29.7.1 將示例設(shè)計(jì)文件導(dǎo)出為XAML
29.7.2 將圖像數(shù)據(jù)導(dǎo)入WPF對(duì)象
29.7.3 與熊共舞
29.8 使用可視化層呈現(xiàn)圖形數(shù)據(jù)
29.9 小結(jié)
第30章 WPF資源、動(dòng)畫(huà)和樣式
30.1 理解WPF資源系統(tǒng)
30.2 使用對(duì)象(邏輯)資源
30.2.1 Resources屬性的作用
30.2.2 定義窗口級(jí)別的資源
30.2.3 {StaticResource}標(biāo)記擴(kuò)展
30.2.4 {DynamicResource}標(biāo)記擴(kuò)展
30.2.5 應(yīng)用程序級(jí)別的資源
30.2.6 定義合并的資源字典
30.2.7 定義只含資源的程序集
30.3 理解WPF動(dòng)畫(huà)服務(wù)
30.3.1 動(dòng)畫(huà)類(lèi)型的作用
30.3.2 To、From和By屬性
30.3.3 Timeline基類(lèi)的作用
30.3.4 用C#代碼創(chuàng)建動(dòng)畫(huà)
30.3.5 控制動(dòng)畫(huà)的速度
30.3.6 動(dòng)畫(huà)的反轉(zhuǎn)和循環(huán)
30.4 用XAML創(chuàng)建動(dòng)畫(huà)
30.4.1 演示圖板的作用
30.4.2 事件觸發(fā)器的作用
30.4.3 使用不連續(xù)的關(guān)鍵幀創(chuàng)建動(dòng)畫(huà)
30.5 WPF樣式的作用
30.5.1 定義并使用樣式
30.5.2 重寫(xiě)樣式設(shè)置
30.5.3 使用TargetType自動(dòng)應(yīng)用樣式
30.5.4 繼承已有的樣式
30.5.5 未命名樣式的作用
30.5.6 使用觸發(fā)器定義樣式
30.5.7 使用多個(gè)觸發(fā)器定義樣式
30.5.8 動(dòng)畫(huà)樣式
30.5.9 以編程方式設(shè)置樣式
30.6 小結(jié)
第31章 依賴(lài)屬性、路由事件和模板
31.1 依賴(lài)屬性的作用
31.1.1 已知的依賴(lài)屬性
31.1.2 CLR屬性包裝器的重要說(shuō)明
31.2 構(gòu)建自定義依賴(lài)屬性
31.2.1 添加數(shù)據(jù)驗(yàn)證例程
31.2.2 響應(yīng)屬性的改變
31.3 路由事件
31.3.1 路由冒泡事件的作用
31.3.2 繼續(xù)或中止冒泡
31.3.3 路由隧道事件的作用
31.4 邏輯樹(shù)、可視樹(shù)和默認(rèn)模板
31.4.1 以編程方式查看邏輯樹(shù)
31.4.2 以編程方式查看可視樹(shù)
31.4.3 以編程方式查看控件的默認(rèn)模板
31.5 使用觸發(fā)器框架構(gòu)建自定義控件模板
31.5.1 模板資源
31.5.2 使用觸發(fā)器添加可視提示
31.5.3 {TemplateBinding}標(biāo)記擴(kuò)展的作用
31.5.4 ContentPresenter的作用
31.5.5 融合模板和樣式
31.6 小結(jié)
第八部分 ASP.NET Web Form
第32章 ASP.NET Web Form
32.1 HTTP的作用
32.1.1 HTTP請(qǐng)求/響應(yīng)循環(huán)
32.1.2 HTTP是無(wú)狀態(tài)協(xié)議
32.2 Web應(yīng)用程序和Web服務(wù)器
32.2.1 IIS虛擬目錄的作用
32.2.2 ASP.NET Development Web Server
32.3 HTML的作用
32.3.1 HTML文檔結(jié)構(gòu)
32.3.2 HTML表單的作用
32.3.3 Visual Studio HTML設(shè)計(jì)器工具
32.3.4 構(gòu)建HTML表單
32.4 客戶(hù)端腳本的作用
32.5 回發(fā)到Web服務(wù)器
32.6 ASP.NET API概覽
32.6.1 ASP.NET 2.0及其后續(xù)版本的主要特性
32.6.2 ASP.NET 3.5(和.NET 3.5 SP1)的主要特性
32.6.3 ASP.NET 4.0和4.5的主要特性
32.7 構(gòu)建單個(gè)文件的ASP.NET網(wǎng)頁(yè)
32.7.1 引用AutoLotDAL.dll
32.7.2 設(shè)計(jì)UI
32.7.3 添加數(shù)據(jù)訪問(wèn)邏輯
32.7.4 ASP.NET指令的作用
32.7.5 腳本塊
32.7.6 ASP.NET控件聲明
32.8 使用代碼文件構(gòu)建ASP.NET Web頁(yè)面
32.8.1 引用AutoLotDAL.dll程序集
32.8.2 更新代碼文件
32.8.3 調(diào)試并跟蹤ASP.NET頁(yè)面
32.9 ASP.NET Web Site和ASP.NET Web Application
32.10 ASP.NET網(wǎng)站目錄結(jié)構(gòu)
32.10.1 引用程序集
32.10.2 App_Code文件夾的作用
32.11 頁(yè)面類(lèi)型的繼承鏈
32.12 與傳入的HTTP請(qǐng)求交互
32.12.1 獲得瀏覽器統(tǒng)計(jì)數(shù)據(jù)
32.12.2 訪問(wèn)傳入的表單數(shù)據(jù)
32.12.3 IsPostBack屬性
32.13 與輸出HTTP響應(yīng)交互
32.13.1 提交HTML內(nèi)容
32.13.2 重定向用戶(hù)
32.14 ASP.NET網(wǎng)頁(yè)的生命周期
32.14.1 AutoEventWireUp特性的作用
32.14.2 Error事件
32.15 web.config文件的作用
32.16 小結(jié)
第33章 ASP.NET Web控件、母版頁(yè)和主題
33.1 Web控件的本質(zhì)
33.1.1 服務(wù)器端事件處理
33.1.2 AutoPostBack屬性
33.2 Control和WebControl基類(lèi)
33.2.1 枚舉所包含的控件
33.2.2 動(dòng)態(tài)添加和刪除控件
33.2.3 與動(dòng)態(tài)創(chuàng)建的控件交互
33.2.4 WebControl基類(lèi)的功能
33.3 ASP.NET Web控件的類(lèi)別
33.3.1 關(guān)于System.Web.UI.HtmlControls的簡(jiǎn)短說(shuō)明
33.3.2 Web控件的文檔
33.4 構(gòu)建ASP.NET汽車(chē)網(wǎng)站
33.4.1 使用ASP.NET母版頁(yè)工作
33.4.2 定義默認(rèn)的內(nèi)容頁(yè)面
33.4.3 設(shè)計(jì)Inventory內(nèi)容頁(yè)面
33.4.4 設(shè)計(jì)Build-a-Car內(nèi)容頁(yè)面
33.5 驗(yàn)證控件的作用
33.5.1 開(kāi)啟客戶(hù)端JavaScript驗(yàn)證支持
33.5.2 RequiredFieldValidator
33.5.3 RegularExpressionValidator
33.5.4 RangeValidator
33.5.5 CompareValidator
33.5.6 創(chuàng)建ValidationSummary
33.5.7 定義驗(yàn)證分組
33.6 使用主題
33.6.1 *.skin文件
33.6.2 應(yīng)用網(wǎng)站級(jí)別的主題
33.6.3 在頁(yè)面級(jí)別應(yīng)用主題
33.6.4 SkinID屬性
33.6.5 以編程方式分配主題
33.7 小結(jié)
第34章 ASP.NET狀態(tài)管理技術(shù)
34.1 狀態(tài)問(wèn)題
34.2 ASP.NET狀態(tài)管理技術(shù)
34.3 ASP.NET視圖狀態(tài)的作用
34.3.1 演示視圖狀態(tài)
34.3.2 添加自定義視圖狀態(tài)數(shù)據(jù)
34.4 Global.asax文件的作用
34.4.1 全局最后異常事件處理程序
34.4.2 HttpApplication基類(lèi)
34.5 應(yīng)用程序狀態(tài)與會(huì)話狀態(tài)的差別
34.5.1 維護(hù)應(yīng)用程序級(jí)的狀態(tài)數(shù)據(jù)
34.5.2 修改應(yīng)用程序數(shù)據(jù)
34.5.3 處理Web應(yīng)用程序的關(guān)閉
34.6 使用應(yīng)用程序緩存
34.6.1 使用數(shù)據(jù)緩存
34.6.2 修改*.aspx文件
34.7 維護(hù)會(huì)話數(shù)據(jù)
34.8 cookie
34.8.1 創(chuàng)建cookie
34.8.2 讀取傳入的cookie數(shù)據(jù)
34.9 元素的作用
34.9.1 在ASP.NET會(huì)話狀態(tài)服務(wù)器中保存會(huì)話數(shù)據(jù)
34.9.2 把會(huì)話數(shù)據(jù)保存在專(zhuān)門(mén)的數(shù)據(jù)庫(kù)中
34.10 ASP.NET用戶(hù)配置API
34.10.1 ASPNETDB.mdf數(shù)據(jù)庫(kù)
34.10.2 在web.config中定義用戶(hù)配置
34.10.3 以編程方式訪問(wèn)用戶(hù)配置數(shù)據(jù)
34.10.4 分組用戶(hù)配置數(shù)據(jù)并且持久化自定義對(duì)象
34.11 小結(jié)
索引

本目錄推薦

掃描二維碼
Copyright ? 讀書(shū)網(wǎng) m.ranfinancial.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號(hào) 鄂公網(wǎng)安備 42010302001612號(hào)