2013-08-13 7 views
7

Die alte XmlElement-Klasse hatte eine FirstChild-Eigenschaft. Was ist das XElement?Wie erhalte ich das erste Kind eines XElement?

Visual Studio lehnt .Element(), .Elements() [0] ab.

EDIT: Danke für alle Vorschläge. Ich wusste nicht, dass ich System.Linq importieren musste, um die First-Methode zu verwenden.

Using System.Linq 
.Elements.First 

oder

Using System.Linq 
Descendants.First 

oder

.FirstNode 
+1

http://msdn.microsoft.com/en-us/library/system.xml.linq. xelement.aspx erwähnt FirstNode(); Ist das, wonach du suchst? –

+0

[Descendants] (http://msdn.microsoft.com/en-us/library/bb360635.aspx) –

+0

möglich Duplikat von [Wie bekomme ich das erste Element nach einem Element mit LINQ-to-XML?] (Http : //stackoverflow.com/questions/1222242/how-can-i-get-the-first-element-after-an-element-with-linq-to-xml) – phillip

Antwort

8

Sie möchten die IEnumerable<XElement> Descendants() Methode der XElement Klasse.

XElement element = ...; 
XElement firstChild = element.Descendants().First(); 

Dieses Beispielprogramm:

var document = XDocument.Parse(@" 
    <A x=""some""> 
     <B y=""data""> 
      <C/> 
     </B> 
     <D/> 
    </A> 
    "); 

Console.WriteLine(document.Root.Descendants().First().ToString()); 

erzeugt diese Ausgabe:

<B y="data"> 
    <C/> 
</B> 
Verwandte Themen