J'utilise XmlReader pour lire un fichier XML et je veux compter l'élément XML juste en dessous de l'élément Document, car je sais que ce devrait être l'élément racine.Qu'est-ce que XmlNodeType.Document? Différence entre XmlNodeType.Element et XmlNodeType.Document
XML
<?xml version="1.0" encoding="utf-8"?>
<NewsLetters>
<EMail Date="10/10/2009">[email protected]</EMail>
<EMail Date="10/10/2009">[email protected]</EMail>
<EMail Date="10/10/2009">[email protected]</EMail>
<EMail Date="10/10/2009">[email protected]</EMail>
</NewsLetters>
C# Code:
public static string TotalMemberCount()
{
XmlTextReader reader = new XmlTextReader(HttpContext.Current.Server.MapPath("~/Newsletter/NewsLetter.xml"));
int totalCount = 0;
while (reader.Read())
{
if (reader.NodeType == XmlNodeType.Element && reader.NodeType != XmlNodeType.Document)
totalCount++;
}
return totalCount.ToString();
}
Normalement, je me attendais à 4 dossiers, mais il retourne 5 car il compte également l'élément racine. Que dois-je faire? En fait, je sais comment résoudre en utilisant XDocument, XElement et LINQ mais je veux résoudre de cette façon, ne me demandez pas pourquoi parce que je veux apprendre tous les moyens de résoudre de tels problèmes.
Merci d'avance.
Sincèrement ....
Aucune réponse? Triste ... – Tarik