Linq to XML - Trouver un élément

Je suis sûr que c'est de base et, probablement, a demandé avant, mais je suis seulement à partir de l'utilisation de Linq to XML.

J'ai un XML simple que j'ai besoin de lire et d'écrire.

<Documents>
...
    <Document>
      <GUID>09a1f55f-c248-44cd-9460-c0aab7c017c9-0</GUID>
      <ArchiveTime>2012-05-15T14:27:58.5270023+02:00</ArchiveTime>
      <ArchiveTimeUtc>2012-05-15T12:27:58.5270023Z</ArchiveTimeUtc>
      <IndexDatas>
        <IndexData>
          <Name>Name1</Name>
          <Value>Some value</Value>
          <DataType>1</DataType>
          <CreationTime>2012-05-15T14:27:39.6427753+02:00</CreationTime>
          <CreationTimeUtc>2012-05-15T12:27:39.6427753Z</CreationTimeUtc>
        </IndexData>
        <IndexData>
          <Name>Name2</Name>
          <Value>Some value</Value>
          <DataType>3</DataType>
          <CreationTime>2012-05-15T14:27:39.6427753+02:00</CreationTime>
          <CreationTimeUtc>2012-05-15T12:27:39.6427753Z</CreationTimeUtc>
        </IndexData>
   ...
 </IndexDatas>
</Document>
...
</Documents>

J'ai un "Documents" nœud qui contient des tas de "Document" nœuds.

J'ai GUID du document et un "données indexées" de nom.
J'ai besoin de trouver le document en GUID et de vérifier si elle a "données indexées", avec un nom.
Si elle ne l'a pas j'ai besoin de l'ajouter.

Toute aide serait aprécié, que j'ai un problème avec la lecture et la recherche d'auge éléments.

Actuellement, je suis en train d'utiliser (en C#):

IEnumerable<XElement> xmlDocuments = from c in XElement
                                        .Load(filePath)
                                        .Elements("Documents") 
                                         select c;

//fetch document
 XElement documentElementToEdit = (from c in xmlDocuments where 
                    (string)c.Element("GUID").Value == GUID select c).Single();

MODIFIER

xmlDocuments.Element("Documents").Elements("Document")

Ce ne renvoie aucun résultat, même tho xmlDocuments.Élément("Documents") n'. Il semble que je ne peux pas obtenir le Document nœuds à partir de Documents nœud.

InformationsquelleAutor no9 | 2012-07-06