2008年3月5日 星期三

ADO.NET 3.5精研講座


ADO.NET 3.5精研講座

此書改版自米米貓前一本著作 ADO.NET 2.0 實戰講座
只是出版社的大大不讓人家在封面上用米米貓的真名付印
也不擺米米貓的照片,真令人傷心!
那麼此本書與上一版有何不同? ADO.NET 2.0基本上核心並無變動,
當然書前1-12章內容也差不多啦。
13- 17章是從難產已作古,從未面市的ADO.NET 2.0精研講座一書擷取出來。
18-19則是因應.NET Framework 3.5 引進的LINQ特色重新撰寫的。
改變最大的是此書是使用Visual C# ,
ADO.NET 2.0 實戰講座是純粹的Visual Basic範例。
所以米米貓的舊讀者,買書之前要三思一下, 不要說我是來騙錢啦!

這邊是試讀章節~

ADO.NET 3.5精研講座內容概覽
本書內容以循序漸進方式,來介紹ADO.NET,和應用程式的設計。本書分為兩大主軸,《基本心法篇》介紹ADO.NET的物件的概念與基礎應用。《實戰主題篇》則是針對較進階的主題做專題式的介紹。

基本心法篇
1. ADO.NET資料存取技術概論
本章概覽ADO.NET的物件模型以及適用的平台,和它可應用的領域。從ADO.NET架構、物件模型、DataSet、.NET資料提供者、錯誤處理機制,以及ADO.NET和XML的關係都有概括性的介紹。

2. 使用Visual Studio 2008管理資料
Visual Studio 2008是一套完整的開發工具,能夠開發Microsoft Visual C# 2008 (C# 3.0)、Visual Basic 2008 (9.0),與Visual C++等程式語言的專案。有了工具的輔助,建立資料庫應用程式的動作將更為得心應手。本章將介紹Visual Studio 工具所提供的「伺服器總管」視窗,說明如何利用此視窗,管理SQL Server 2005、SQL Server 2005 Express、Excel,與Access等多種不一樣的資料庫。

3. 連接到資料庫
在這 一章中將要介紹建立ADO.NET應用程式的第一步,了解如何使用Connection物件,連接到常用資料來源,如SQL Server 2000/2005、SQL Server 2005 Express、Oracle 10g、MySQL、Access、Excel、文字檔案等等。

4. 使用Command與預存程序
Command物件可以用來查詢資料、可以用來執行資料的新增、刪除、修改動作,在這個章節中,將專注在介紹Command物件的使用方式。

5. 使用DataReader讀取資料
DataReader 物件提供一個簡單有效率的方式,讓應用程式瀏覽回傳的資料。使用DataReader從資料庫回傳的資料是唯讀 (Read-only)、只能向下捲動 (Forward-only) 的串流 (stream) 資訊。所謂串流資訊指的是位元組陣列資料。本章將討論DataReader的使用方式,並以一些範例程式,說明DataReader的應用,例如讀取資料 庫中的二進位圖片檔、Excel檔案、文字檔案。

6. 離線的資料儲存體--DataSet
DataSet 與DataTable是ADO.NET架構中功能相當強大的資料存取物件,可以將之視為一個離線的資料庫。本章將討論如何建立 DataSet/DataTable、如何使用資料繫結技術與瀏覽資料、如何建立主鍵、唯一的條件約束、自訂外部索引鍵條件約束、自訂運算行欄位及新增、 刪除及修改DataRow,以及DataSet/DataTable如何記錄離線環境中資料的異動等議題。

7. XML結構描述與具型別資料集
在 這一章中,將了解ADO.NET與XSD結構描述資訊的關聯性。在本章將使用Visual Studio 2008建立具型別資料集、及如何將結構描述資訊載入到DataSet/DataTable之中,或把DataSet/DataTable的結構描述資訊 儲存成XML檔案。

8. 使用DataAdapter異動資料
DataAdapter物件是 ADO.NET資料提供者的一部份,包含了Connection物件、DataReader物件,和Command等物件。它也像是一個容器一般,可以包 含多個Command物件,分別對資料進行新增、刪除、修改、查詢資料的動作。本章也說明如何在離線的環境,將資料從資料庫伺服器下載到用戶端電腦,修改 資料後,再更新回資料庫。

9. DataRelation與ForeignKeyConstraint
DataSet 中可以存放多個DataTable,並可以建立各DataTable之間的一對多,或多對多關聯,在這一章中,將深入探討DataRelation物件的 使用方式,透過DataRelation搜尋父子DataTable中相關的資料。為了維護資料的完整性,在定義DataRelation物件時,也可以 順便建立ForeignKeyConstraint,本章將說明DataRelation與ForeignKeyConstraint的相似與不同之處。

10. 使用TableAdapter開發資料存取程式
本 章介紹Visual Studio 2008 開發工具所提供的「資料來源」視窗、「資料來源組態精靈」,幫助程式設計師,快速地建立資料庫連線,只要透過一些屬性設定,和少量的程式碼,就可建立一個 功能完整的資料存取程式,讀取資料庫資料,以及進行資料刪除、修改作業。並以實例說明如何使用資料庫、Web服務、物件,做為應用程式的資料來源。

11. 再談DataTable與DataView物件
將資料載入DataSet的DataTable當中後,可能會想要從中搜尋某筆資料,若找尋某些符合搜尋條件的資料,再或者想要按不同的欄位來排序資料。這一章將介紹如何在DataTable中搜尋資料,以及使用DataView來進行排序、搜尋資料的不同實作方式。

實戰主題篇
12. 建立ASP.NET資料存取網頁
在 這個章節中,將介紹如何利用Visual Studio 2008開發工具,建置ASP.NET資料存取網頁。瞭解何謂資料來源元件、使用SqlDataSource、ObjectDataSource撰寫能新 增、刪除、修改、查詢資料的全功能網頁。並介紹ASP.NET的資料繫結控制項,如GridView、DetailsView、FormView等等。

13. 通用資料存取模型
在ADO.NET的資料提供者模型 (Provider Model)提供您撰寫與資料提供者無關的程式碼,能夠在執行時期動態決定使用要使用的資料提供者,增加設計的彈性。本章探討Provider Factory 模型的觀念與實際的應用。

14. 離線資料存取策略
離線應用程式進行批次更新作業時,常常會發現資料已經被其它使用者變更,而造成離線衝突,這一章中將介紹ADO.NET如何記錄這些資料的異動與版本,並說明如何偵測是否發生衝突,以及在發生衝突後可採用的資料更新策略。

15. MARS、非同步命令與SqlBulkCopy
本 章介紹三大主題,如何使用多重作用結果集 (MARS),在同一個資料庫連線中開啟多個結果集。非同步命令則利用多執行緒的概念,指派需時冗長的工作給工作執行緒在背景執行,並說明.NET中設計 的四種非同步模型,以善用多執行緒帶來的優勢。第三個主題則是SqlClient資料提供者專屬的大量資料複製能力,能將大量資料快速地匯入SQL Server資料庫。

16. ADO.NET與交易處理
為了資料的正確性,交易是很重要的, 應用程式能藉由此機制確保交易過程中牽涉到的資料的一致性。本章說明交易的基本概念與重要性,並介紹如何在ADO.NET使用本機交易,以及在分散式應用 程式中,利用System.Transaction命名空間下的物件進行分散式交易處理。最後,說明交易的鎖定與隔離機制。

17. .NET CLR整合
本 章探究SQL Server 2005版後的新功能,支援.NET共通語言執行環境。您可以利用C# 來撰寫預存程序、聚合函數、使用者自訂函數、使用者自訂型別與觸發器,然後將程式載入SQL Server執行,善用.NET類別來補足SQL語法不足之處,例如開啟硬碟中檔案。

18. 與LINQ to SQL接軌
在.NET Framework 3.5版本最另人激賞的新功能,就是LINQ查詢 (.NET Language Integrated Query),在程式語言中加入物件的查詢能力。針對ADO.NET部份,LINQ提供了LINQ to ADO.NET,包含兩大主題:LINQ to SQL與LINQ to DataSet。
本章介紹LINQ查詢的基本語法,利用Visual Studio工具LINQ to SQL範本建立DataContext物件來操作資料,利用類似SQL查詢的語法,查詢物件的資料、篩選資料、做排序或資料的加總。除查詢之外,LINQ to SQL也可整合預存程序來修改資料庫資料。本章除探討資料異動的主題之外,也會說明離線衝突的解決方式。本章最後以Step-by-Step方式介紹如何 在網頁中整合LINQ,並利用ASP.NET 3.5版提供的新DataList與DataPager伺服器控制項與LinqDataSource資料來源控制項來設計允許自訂資料分頁的網頁。

19. 與LINQ to DataSet共舞
LINQ to DataSet能彌補在DataSet中查詢的不足之處,能針對DataSet中的多個DataTable做連結(join)查詢,但不著重在資料如何更 新回資料來源問題。本章介紹LINQ to DataSet提供的DataRowExtensions與DataTableExtensions擴充類別,為DataSet查詢提出許多擴充功能,能 利用LINQ語法進一步篩選DataSet中的資料。

3 則留言:

匿名 提到...

恭喜! 第一周首賣就上博客來新書排行 TOP36

米米貓 提到...

錯誤訂正:
導讀 P7頁,第二段:
錯誤:並利用ASP.NET 3.5版提供的新DataList與DataPager伺服器控制項

正確:
並利用ASP.NET 3.5版提供的新 ListView與DataPager伺服器控制項

亞當斯(Adams) 提到...

恭喜,賀喜挺進天瓏排行榜21名!!^^

總瀏覽量