Avatar billede c-sharp Nybegynder
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?
Avatar billede guidmaster Nybegynder
04. juni 2004 - 14:10 #1
For Each dRow As DataRow In ds.Tables(0).Rows
    Console.WriteLine("Value: " & dRow.Item(0).ToString)
Next
Avatar billede jakobg Nybegynder
04. juni 2004 - 14:11 #2
Hvad vil du gennemløbe? Tabellerne, relationerne, en bestemt tabel?
Avatar billede c-sharp Nybegynder
04. juni 2004 - 14:15 #3
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.
Avatar billede guidmaster Nybegynder
04. juni 2004 - 14:21 #4
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?
Avatar billede jakobg Nybegynder
04. juni 2004 - 14:22 #5
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
Avatar billede c-sharp Nybegynder
04. juni 2004 - 14:35 #6
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++;
}
Avatar billede jakobg Nybegynder
04. juni 2004 - 14:37 #7
vb-begynder,
Er det ikke snart på tide du ændrer dit handle, når du koder i C#? :)

(jeg giver op)
Avatar billede guidmaster Nybegynder
04. juni 2004 - 14:55 #8
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?
Avatar billede c-sharp Nybegynder
04. juni 2004 - 15:48 #9
Jeg skal have fat i den post der står på indexnummeret i + ii i dataset'et
Avatar billede guidmaster Nybegynder
04. juni 2004 - 15:53 #10
Skal du så ikke bare have fat i ds.Tables["table"].Rows(i+ii) ?
Avatar billede c-sharp Nybegynder
04. juni 2004 - 16:16 #11
Hvis jeg skriver følgende:

  ds.Tables["table"].Rows[i+ii]

udskriver den:

  System.Data.DataRow
Avatar billede guidmaster Nybegynder
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")
Avatar billede c-sharp Nybegynder
04. juni 2004 - 21:34 #13
er det fordi at jeg koder i c# at Item ikke findes under Rows?
Avatar billede guidmaster Nybegynder
04. juni 2004 - 21:47 #14
ds.Tables["table"].Rows[i+ii]["Fornavn"]
Avatar billede c-sharp Nybegynder
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!
Avatar billede guidmaster Nybegynder
07. juni 2004 - 10:05 #16
Så smider jeg da lige et svar ;)
Avatar billede c-sharp Nybegynder
07. juni 2004 - 10:15 #17
? Du havde da smidt et svar
Avatar billede Ny bruger Nybegynder

Din løsning...

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.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester