04. juni 2004 - 14:04
Der er
16 kommentarer og 1 løsning
Hjælp til at gennemløbe et dataset med en for eller while løkke
Er der nogen der kan give mig et eksempel på at gennemløbe et dataset med en while eller en for løkke?
Annonceindlæg fra Kommando
For Each dRow As DataRow In ds.Tables(0).Rows Console.WriteLine("Value: " & dRow.Item(0).ToString) Next
Hvad vil du gennemløbe? Tabellerne, relationerne, en bestemt tabel?
Jeg vil gennemløbe en bestemt tabel, men jeg har brug for at kunne tilgå hvert element med et nummer. Jeg skal nemlig springe lidt i resultaterne.
Er det så ikke det som jeg gør i mit svar? Der løber du tabel nummer 1 igennem og spørger efter de forskellige Items der er i den aktuelle DataRow?
For at fortsætte guidmasters eksempel... For Each dRow As DataRow In ds.Tables(0).Rows for i as integer = 0 to ds.Tables(0).Columns.Count - 1 Console.WriteLine("Value: " & dRow.Item(i).ToString) next Next
Ok, i får lige hele problemet. Jeg har lige noget MEGET grimt kode som jeg skal have til at virke. Der hvor jeg har skrevet her er problemet skal jeg have indsat den post jeg er kommet til. som er et index nummer jeg får ved: i + ii int iii = 0; int ii = 0; while(ds.Tables["table"].Rows.Count/3 != ii) { foreach (DataColumn c in ds.Tables["table"].Columns) { strResultsHolder += "<tr>"; strResultsHolder += "<td class=\"tekst_sort\">" + ResourceText.GetString("kontaktPersoner_" + c.ColumnName) + "</td>"; int i = 0; while(i <= 3) { strResultsHolder += "<td class=\"tekst_sort\" width=\"150px\">" + ***** HER ER PROBLEMET *****+ "</td>"; i++; iii++; } strResultsHolder += "</tr>" + "<tr height=\"20px\"><img border=\"0\" src=\"Images/space.gif\" style=\"width: 1px; height: 1px;\" alt=\"\"></tr>"; } ii++; }
vb-begynder, Er det ikke snart på tide du ændrer dit handle, når du koder i C#? :) (jeg giver op)
Hvad er det du mener med at du vil have indsat 'den post'? Du har jo en DataRow - er det et bestemt fejl i denne række du vil have? Eller er det en bestemt række du vil have fat i?
Jeg skal have fat i den post der står på indexnummeret i + ii i dataset'et
04. juni 2004 - 15:53
#10
Skal du så ikke bare have fat i ds.Tables["table"].Rows(i+ii) ?
04. juni 2004 - 16:16
#11
Hvis jeg skriver følgende: ds.Tables["table"].Rows[i+ii] udskriver den: System.Data.DataRow
04. juni 2004 - 19:06
#12
Ja, du skal selvfølgelig tage i den datarow du ønsker. På denne DataRow skal du så vælge det Item som du ønsker at få ud. Hvis du kun ønsker en værdi vil det eks. se ud som følgende: ds.Tables["table"].Rows(i+ii).Item("Fornavn")
04. juni 2004 - 21:34
#13
er det fordi at jeg koder i c# at Item ikke findes under Rows?
04. juni 2004 - 21:47
#14
ds.Tables["table"].Rows[i+ii]["Fornavn"]
07. juni 2004 - 07:43
#15
Det var bare det jeg skulle bruge for at få det til at spille! Tusind tak for hjælpen!
07. juni 2004 - 10:05
#16
Så smider jeg da lige et svar ;)
07. juni 2004 - 10:15
#17
? Du havde da smidt et svar
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.