webForumDet fria alternativet

Fylla typat dataset med SqlDataReader

.NET

9 svar · 395 visningar · startad av asmodie

Medlem sedan jan. 2004501 inlägg
Frågan#1

Finns det något enkelt sätt man fylla ett typat datasett med en SqlDataReader?

Medlem sedan juni 20011 732 inlägg
#2

Antar att du får skapa dina kolumner i ditt dataset först och sedan loppar du bara in dina data (säkert pseudokod):

DataSet ds = new DataSet();
ds.Columns.Add(new DataColumn("myColumn"));
while (sqldatareader.Read()) {
  datarow=ds.NewRow();
  datarow[0]=reader.GetString(0);
  ds.Rows.Add(datarow);
}
Medlem sedan jan. 2004501 inlägg
#3

Tackar!

Medlem sedan dec. 19991 072 inlägg
#4

...Varför vill du fylla ditt typad.e DS själv med en datareader och inte med en Adapter?

Adaptern använder ju ändå en Datareader internt för att fylla data....

Medlem sedan jan. 2004501 inlägg
#5

För enligt alla ska man få bättre bättre prestanda med SqlDataReader...

Medlem sedan juni 20011 732 inlägg
#6

Nja, om du inte använder ett tungladdat dataset kanske... :)

Medlem sedan dec. 19991 072 inlägg
#7

För enligt alla ska man få bättre bättre prestanda med SqlDataReader...

Det gäller framförallt när du binder data mot olika kontroller, eller manuellt bearbetar data (tex. om du skapar egna HTML-tabeller).

Men om du ändå ska använda ett som NETwork skriver "tungladdat" dataset (och ett Typed Dataset är snäppet värre!), så gissar jag på att Adapterns underliggande logik och optimering av dess DataReader ger bättre prestanda.

Medlem sedan jan. 2004501 inlägg
#8

Jag hade en kännsla av att det var något sådant. Annars skulle det inte finnas någon speciellt använding för Adaptern. Det gäller att lära sig när man ska använda vad.

Pga att jag är noob så har jag mer eller mindre bara använt mig av Adapter hittills.

Medlem sedan apr. 20012 266 inlägg
#9

OT: Men lägg ner användandet av "noob" låter så fånigt och är inte ett ord :)

Medlem sedan jan. 2004501 inlägg
#10

Hehe...noob är slang för Newbee som i sin tur är slang... :)
Förljer man första hjälpen blir man skadad tyvärr.

255 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2
120 ms — deklarationer (db)
0 ms — hämta statistik (cache)
131 ms — hämta tråd, inlägg och bilagor (db)
120 ms — ändringar (db)