Feed Icon  


  • Bryant Likes
  • Send mail to the author(s) E-mail
  • twitter
  • View Bryant Likes's profile on LinkedIn
  • del.icio.us
Get Microsoft Silverlight
by clicking "Install Microsoft Silverlight" you accept the
Silverlight license agreement

Hosting By

Hot Topics


Open Source Projects



ARC403 - Programming ADO.NET in "Whidbey"

Posted in at Tuesday, 28 October 2003 08:50 Pacific Standard Time

ADO.NET in Whidbey doesn't break anything from 1.0 or 1.1. It just adds new features and performance. All the items below were explained and demos done.


1) Asyncronous methods. Very cool. Now you can open two connections and perform two operations at the same time with the new methods (ex: BeginOpen, EndOpen).

2) Batch Updates. Add a bunch of rows to a dataset, but only make one roundtrip to the database. Very nice! All done via one property “BatchSize”.

3) DataSet Performance. Now offers binary serialization for fast serialize/deserialize and less memory usage. Faster index engine speeds up inserts.


4) No MDAC requirement! (PDC build still requires MDAC)

5) Paging via ExecutePageReader with starting row and number of rows. Very easy to do. I like it!

Yukon Enabled

6) User-Defined Types. Use CLR types that live in Yukon. This demo was probably the best demo I've seen yet. Very cool wireframe drawings using CLR types in Yukon. Also did a demo showing how you can call methods on CLR types in SQL Workbench.

7) Multiple Active Result-Sets (MARS). You can now open multiple active datareaders on one connection.

8) SQL Server XML Data Type. XML is “just a type“ which means seamless integration. SqlDataReader.GetSqlXmlReader (I like the looks of this one).

Common Base Classes

9) Common Provider Model. Now have abstract base classes instead of interfaces for the provider model. This is without breaking changes.

10) Db* Base Classes. DbConnection, DbCommand, etc. Problem: SQL syntax is still database-specific, but this will be done before it's released. What I found to be cool was the DbProviderFactory: DbProviderFactories.GetFactory(“System.Data.SqlClient“). You can use this factory to create a DbConnection or DbCommand which can execute SQL statements against SQL Server. Just change the factory to change your data provider.

Overall this was a very well done session. I really liked the before and after views of the code. If you missed this session I would ask if it could be repeated. This session was the first session that I got really excited about.

Comments are closed.