Friday, September 22, 2006

ADO.NET 2.0 TableAdapter

Kad softveraš prelazi iz VS2003/.Net1.1 u VS2005/.Net2.0 okruženje lako odođe u iskušenje da jednostavno konveruje svoje aplikacije koje barataju bazama podataka. Objektni model ADO.Net 2.0 nije mnogo drugačiji od onog u 1.1 verziji. I dalje osnovu čini tandem Dataset i DataAdapter klasa. Međutim u VS2005 okruženju glavnu ulogu preuzima TableAdapter. TableAdapter-i nisu deo framework-a, već se radi o klasama koje generiše VS dizajner (najčešće novi Data Source Confiration Wizard), koje za programera enkapsuliraju rad sa DataAdapter i Connection objektima i koje su intenzivno podržane od vizuelnih alata u VS2005. Velika je stvar što TableAdapter podržava proizvoljan broj select upita (za razliku od DataAdaptera koji podržava jedan select upit) pri čemu wizard za svaki upit generiše metode koji pune/kreiraju Dataset za programera. Na primer, programer sada koristi jedan isti TableAdapter MyTableAdapter da bi dobio spisak artikala, artikle koji pripadaju jednoj grupi ili pojednični artikal ili tako što poziva metode MyTableAdapter.GetProducts(), MyTableAdapter.GetProductsByCategory(string category), MyTableAdapter.GetProductsById(int id).
Iz mog dosadašnjeg iskustva u radu sa TableAdapter-ima mislim da je pri prelasku na VS2005 bolje od početka napisati deo aplikacije koji komunicira sa bazama podataka i iskoristi prednosti koje nudi VS2005 (pored TableAdapter-a tu su i Data Sources i druge džidža midže) nego prosto konvertovati VS2003 projekat.

No comments: