Building the Data Access Layer: Some ASP.NET 2.0 tips, and some new Linqs about LINQ

Building a data layer can be one of the most time-consuming (read: monotonous and/or annoying) aspects of writing an application.  When addressing the legendary object/relational “impedence mismatch”, you typically end up building a lot of scaffolding that ties the database to the rest of your application.

Make it easier today from ASP.NET 2.0

ASP.NET maestro Scott Gurthrie, who has been on fire recently, wrote up a great article on how to build a Data Access Layer using Strongly Typed TableAdapters and DataTables in ASP.NET 2.0.  He outlines one simple and flexible way to quickly build your Data Access Layer up from scratch.

The future: Kicking it up a notch with LINQ

For a glimpse into a future for the DAL, where the “impedence mismatch” is addressed by “kicking it up a notch” by adding language extensions and libraries, check out LINQ, the .NET Language Integrated Query Project.  Here is the overview of LINQ written by Don Box and Anders Hejlsberg, and here is a new survey article, by Ted Neward, that outlines the challenge and compares LINQ to its comtemporaries (with feedback on his article here). 

I really enjoyed Ted’s article.  I could previously see how indispensible LINQ is going to be, but his article positioned LINQ within a much broader perspective for me.  It also, allegedly, is stirring up some controversy!

Comments (2)

  1. Mike Hughes says:

    Thanks Rob for presenting a nice selection of artictles on DAL. I have read through the articles and I’ll be watching LINQ’s progress closely. It will be interesting to see how well they can integrate it with SQL Server (creation of stored procedures etc.). To address ORM today there are alot of solutions to chose from, one of the more interesting ones I came across is:



  2. Mike Hughes says:

    <a href="">ScottGu</a&gt; has pointed out another good code generator and open source template that generate best practice DAL. Check out the <a href="">tutorial.</a&gt;