What am I missing with table adapters?

Published 10 October 07 11:22 AM | despos

An excellent question to reply to tons of literature and zillions of words about architecture, middle-tier, design, DAL, LINQ and so on.

If I use TableAdapters, apart from the pretty ORM diagram in LINQ, what am I missing?
 

The short answer is that functionally speaking, you miss just nothing  :-) If it works for you, that's OK.

A more articulated answer entails one brings on the architectural perspective of things. So architecturally speaking, the pattern behind table adapters is a Table Data Gateway with a vision of the data model that is along the guidelines of the Table Module pattern. In a nutshell, everything is a table; you model your actions through the schema of database tables and you use a gateway object to centralize your data access code--ADO.NET or perhaps Linq-to-SQL stuff.

Where do you start missing something? As the complexity grows beyond a certain threshold. If you never reach that threshould, you're just fine.

There's a nice figure in the Martin Fowler's book "Patterns of Enterprise Application Architecture" that shows how Table Module is a pattern with a relatively low initialization cost. These costs describe a function that runs pretty soon into an asymptote--a sort of vertical wall that it attempts to overcome making costs go high with the complexity of the domain. A domain-based model--like the one that more or less you can see through Linq-to-SQL, has a more linear curve, with higher initialization costs but a regular growth with the complexity of the domain to design and implement. 

 

Filed under:

Comments

# GadgetGadget.info - Gadgets on the web » What am I missing with table adapters? said on October 10, 2007 07:25 AM:

Pingback from  GadgetGadget.info - Gadgets on the web » What am I missing with table adapters?

Leave a Comment

(required) 
(required) 
(optional)
(required)