Den ser ud til at give mig en collection af Person.
...men når jeg forsøger et iterere igennem således: string personXml = string.Empty; foreach(var p in personCollection){ personXml += p.Person[0].ToString(); }
Får jeg den første ud...men jeg vil jo gerne bare skrive p.Person.ToString();
Den vil jo give dig en liste i din liste pga: var personCollection = xDoc.Descendants("Rod").Select(s => new {Person = p.Element("Personer").Elements().ToList()});
Select returnere en liste ...
p.Element("Personer").Elements().ToList() returnere en liste
Dvs du har en liste som indeholder et anonym type af overstående liste.
Jeg er dog ikke helt sikker på hvad du vil ...
Følgende tager Name og Age ud ...
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Xml.Linq;
Ja, det er med vilje, jeg gør brug af en anonym type...jeg vil sådan set bare have tekst strengen af xml...ikke mappe det over i en entitets klasse. Eksemplet giver ikke mening...men konceptet skal afprøves.
En collection af strenge, der holder på Personer (List<string> personer = new List<string>())
Som jeg læser den ... tager den alle Noder under "xDoc" som er af XName eller alle.
Dvs du kan også bruge: IEnumerable<XElement> xElements = document.Descendants("Person"); foreach (var element in xElements) { Console.WriteLine(element.ToString()); }
Men hvis en Person kan have en Person ... så vil det give problemer.
Ved ikke hvornår xDoc.Descendants("Rod") er smart at bruge...
Synes godt om
Ny brugerNybegynder
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.