想考 ADO.NET 3.5 的考試嗎?先看看這裡吧。

簡介 Exam 70-561: TS: Microsoft .NET Framework 3.5, ADO.NET Application Development

話說在 Visual Studio 2008 體系認證出來時,我自己就有在關注它的發展,直到今年 (2008) 的 4 月左右,ASP.NET 3.5 (Exam 70-562) 以及 ADO.NET 3.5 (Exam 70-561) 出 Beta 考試時,我就先跑去考了 (可參考本篇文章),結果出乎意料之外的被我考過了 ...,變成我考 beta 考過的三科考試之一 (另外兩科是 70-562 -- ASP.NET 3.5 和 70-542 -- MOSS 2007)。

根據微軟官方所公布的 70-561 準備指南,ADO.NET 的考試中,ADO.NET 2.0 以前的大約佔了 70%,ADO.NET 3.5 的佔 30% 左右,分布在下列主題中:

  • ADO.NET 2.0: Connecting to Data Sources (12 percent)
  • ADO.NET 2.0+3.5: Selecting and Querying Data (22 percent),內含 LINQ to SQL 與 LINQ to ADO.NET。
  • ADO.NET 2.0+3.5: Modifying Data (24 percent),內含 LINQ 的考題。
  • ADO.NET 2.0+3.5: Synchronizing Data (15 percent),內含 Microsoft Sync Framework for ADO.NET 的考題。
  • ADO.NET 2.0: Working with Disconnected Data (16 percent)
  • ADO.NET 3.5: Object Relational Mapping by Using the Entity Framework (11 percent)

因此,就算你沒有玩過 ADO.NET Entity Framework 或 ADO.NET Sync Framework 這些新東西,你還是有機會考過本科的,只要你的 ADO.NET 基礎夠強,也就是說,你必須要熟悉下列的東西:

  • ADO.NET 的 SqlConnection, OleDbConnection, OdbcConnection 的使用,連線字串的撰寫以及連線問題排除,尤其是 SQL Server 2005 的遠端連線問題,以及它上面的基底命名空間:System.Data.Common 中的東西。
  • 如何利用 DataReader, DataAdapter, TableAdapter 等工具,甚至是 LINQ to SQL 與 LINQ to ADO.NET 的方法,由資料庫中撈取資料,而資料可能是資料集,純量值資料或是 BLOB 或 varchar(max), nvarchar(max), varbinary(max) 等等資料類型。
  • 如何利用 Command, DataAdapter.Update,甚至於是 LINQ to SQL 與 LINQ to ADO.NET 的方法,來插入,刪除或更新資料庫中的資料,同時還必須要會使用交易 (Transaction) 以及管理資料的完整性,並處理例外狀況等。
  • 管理 DataReader 回傳的已連結資料,並且會以程式化方式操作 DataTable, DataSet, DataRow, DataColumn, DataRelation, Constraint 等物件,DataSet 和 Typed DataSet 要能分的出來差異,以及 Typed DataSet 的操作方法等。
  • 知曉如何使用 SqlDependency 和 SqlCacheDependency 來快取資料庫中的資料。

如果你對上列的東西都瞭若指掌,就幾乎可保證考過,但如果你想要分數更好看一點,那下列的東西也不能放過:

  • ADO.NET Entity Framework,在發布 Beta 考試時這個工具還是 Beta,但現在已經 RTM 了,所以你必須要會使用原生的 System.Data.EntityClient,Entity SQL,Object Service (LINQ to Entities) 以及定義 Entity Data Model 這些,這部份佔了 11%。
  • Microsoft Sync Framework for ADO.NET,這也是最近才發布的新工具,至少要熟悉 for ADO.NET 這一塊,分數大約是 5-10% 左右吧。
  • LINQ 的語法要熟悉,以及如何使用 LINQ 來讀取與更新資料庫,大約是 10-15%。

順便分享一下我的考試成績:

  • 總成績:828,通過分數:700
  • Connecting to Data Sources:100%
  • Selecting and Querying Data:60%
  • Modifying Data:85%
  • Synchronizing Data:55%
  • Working with Disconnected Data:75%
  • Object Relational Mapping by Using the Entity Framework:30% (剛出來還沒玩透...)