Avatar billede decrypto Nybegynder
28. marts 2006 - 15:43 Der er 6 kommentarer

Loop igennem et typed dataset

Jeg kan ikke huske det... og jeg kan heller ikke finde et godt eksempel på nettet.

Jeg skal foreksempel smide id'er fra et fyldt dataset ned i en streng.

foreach(MyTypedDS.myDataTable a in _MyTypedDS.myDataTable)
{
myStringofIDs += a.IDColumn.ToString()+";";
i++;
}

Men der er et eller andet galt. Hvad er forkert?
Avatar billede snepnet Nybegynder
28. marts 2006 - 17:38 #1
du skal have fat i dine rækker... ikke selve tabellen.
konkatanering af strings på den måde du gør det er ikke så hensigtsmæssig - benyt en StringBuiler sb = new StringBuilder();
sb.Append("...");

og få resultatet med sb.ToString();

du tæller op på i, men benytter den ikke.... er det med vilje?

mvh
Avatar billede decrypto Nybegynder
28. marts 2006 - 20:34 #2
Nej, i'et glemte jeg at fjerne.

Kan du ikke lige submitte et eksempel på en stringbuilder.
Avatar billede decrypto Nybegynder
28. marts 2006 - 20:55 #3
Ok. Jeg vil prøve stringbuilder...men kan du ikke hjælpe mig med min kode...jeg kan stadig væk ikke få værdien ud pr. række. Hvordan gør jeg det??

foreach(DataRow dr in _ds.Tables[0].Rows)
{
  brandIDs += _ds.Tables[0].Rows[i].ItemArray.GetValue+";";
  i++;
}
Avatar billede decrypto Nybegynder
28. marts 2006 - 21:01 #4
Jeg fandt det....intellisense virkede ikke...

_ds.Tables[0].Rows[i].ItemArray[0].ToString();

Kan du stadigvæk sende et eksempel på, hvordan man kan bruge StringBuilder?  Og hvorfor er StringBuilder smart???
Avatar billede snepnet Nybegynder
28. marts 2006 - 21:11 #5
hedder formentlig noget i denne stil:

System.Text.StringBuilder sb = new System.Text.StringBuilder();
foreach(MyTypedDS.myDataTableRow row in _MyTypedDS.myDataTable.Rows)
{
  sb.Append(a.IDColumn.ToString());
  sb.Append(";");
}

mvh
Avatar billede davidfossil Nybegynder
29. marts 2006 - 21:42 #6
decrypto : StringBuilder er smart fordi den gør det muligt at redigere sit indhold, samt (vigtigst i dette tilfælde) at tilføje flere karaktere til indholdet. Objekter af typen System.String kan derimod IKKE ændres (immutable) når de først er instansieret.

Eksempler på hvordan strings skaber overhead ifb. løkker:
http://www.codeproject.com/Purgatory/string.asp
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