06. april 2006 - 17:15Der er
9 kommentarer og 2 løsninger
Data fra og til databaser
I gammeldags ASP var der ikke så mange måder at kommunikere med en database på - men det er der der bestemt i .net.
Jeg har forsøgt at danne mig et overblik over hvad der er hvad men uden held - så er er der nogle der kan give mig en fortælling eller et link om hvad der er hvad og hvad der bruges hvornår osv? recordset, datatable, datareader, dataset osv? data til dropdown, udtræk et enkelt resultat, udtræk til et loop (databind) osv?
Hvor stor forskel kodemæssigt er der på om man benytter access eller ms sql? og om man benytter ren SQL eller stored procedures?
Hos Computerworld it-jobbank er vi stolte af at fortsætte det gode partnerskab med folkene bag IT-DAY – efter vores mening Danmarks bedste karrieremesse for unge og erfarne it-kandidater.
Du kan vist grundliggende vaelge 3 maader at bruge DB paa:
1) bruge DataReader og skovle data over i en collection af en data klasse
2) bruge DataAdapter og DataSet (som indeholder bl.a. DataTable) som er nogle faerdige klasser i .NET til at opbevare data i
3) bruge et O/R mapping tool - der er masser af dem f.eks. NHibernate
Du kan vaelge at bruge database specifikke klasser System.Data.SqlClient.SqlXxxxx og System.Data.OleDb.OleDbXxxxxx og saa skal rigtigt meget aendres ved database skift, men rettelserne er meget trivielle da klasserne er ens, eller du kan vaelge at bruge database uafhaenge interfaces og en factory, saa skal du kun rette connection string naar du skifter database.
Hvis du bruger asp.net 2.0 kan du bruge datasources som kan sørge for at hente tingene for dig. 1) en datareader vil i de fleste tilfælde være hurtigere end et dataset. 2) I framework 2.0 er der kommet en generis list som gør at du ikke skal bruge arrayliste. Hvis du har en class kaldet class1 kan du lave en liste af den class med
List<class1 > li = new List<class1 >();
Her kan du tilføje så mange class1 objekter du vil.
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.