Avatar billede jimgordon Nybegynder
06. december 2005 - 08:31 Der er 3 kommentarer og
1 løsning

Hent navngiven child fra XmlNode

Henter nogle børn ud af en XmlNode, men vil gerne hente børnene med navn og ikke index. Bruger p.t. en DataRow, men vil hellere lave det i ren XML:

foreach (XmlNode node in nodeList)
{
  DataRow dr = _xmlDoc.GetRowFromElement((XmlElement)node);
  if (dr!=null)
  {
    // lagt ind i en combobox ...
    cbCarType.Items.Add(dr["Type"]);
    cbCarModel.Items.Add(dr["Model"]);
  }
}

Kan man hente børnenoderne ud ved xml uden af bruge index, men elementnavn: node["Type"].InnerText lignende noget ... Jeg vil ikke til at spørge på navnet ved at loop index igennem.
Avatar billede the_party_dog Nybegynder
06. december 2005 - 08:43 #1
Hvis du ikke modtog det hele som en nodelist, men som et Xml dokoment, kunne du nemt finde de bestemte noder du mangler:

XmlDocument doc = new XmlDocument();
doc.Load("c:\\test.xml");//Her kan du selvfølgelig loade en Xml fil på mange måder

XmlNode xnoFound = doc.SelectSingleNodes("//NanvPåNode");

læs mere om Xpath på www.zvon.org
Avatar billede jimgordon Nybegynder
06. december 2005 - 10:56 #2
Kald med XPath er relativt ressource krævende. SelectSingleNode skal kværnes to gange til mit formål, hvor imod en datarow kan klar det på eengang.
Avatar billede jimgordon Nybegynder
06. december 2005 - 14:09 #3
men linket kendte jeg ikke, det er 30 point værd.
Avatar billede the_party_dog Nybegynder
06. december 2005 - 15:22 #4
Helt iorden. :)
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