2010-05-01 2 views
0

J'ai une méthode et je veux que des utilisateurs différents me transmettent des fichiers xml. Ces fichiers auront des noms différents pour les éléments que je recherche et les éléments que je cherche peut-être dans différentes structures. Ma première impression était que nous devrions juste leur dire de passer dans le format XML dans un format standard. Cependant, c'est ainsi qu'ils ont leurs données et ils insistent sur le fait que c'est beaucoup plus facile s'ils n'ont pas à le convertir.Gestion de fichiers xml avec des structures et des noms différents

Que puis-je faire pour recevoir des données de tous types?

Les faire passer dans un dictionnaire? number = mydata/numbers

Quelle est la manière la plus simple pour eux de me définir leurs données sans les modifier réellement?

sample1

<numbers> 
15 
</numbers> 

sample2

<mydata> 
<mynumbers> 
15 
</mynumbers> 
</mydata> 
+0

Il n'est pas clair à partir de votre question si le format de données est mandaté par les utilisateurs ou pas. Que pouvez-vous exiger d'eux? – Oded

+0

Les noms peuvent être des chaînes très différentes et peuvent exister à différents niveaux du document XML. Les caractères génériques ne fonctionneront pas dans ce cas ... – zachary

Répondre

0

LINQ to XML peut gérer des documents différents formats assez facilement. Par exemple cette requête obtiendra le "15" pour les deux documents que vous avez mentionnés:

XDocument doc = XDocument.Load("input.xml"); 
var result = doc.Descendants().Where(e => e.Name.ToString().Contains("numbers")); 
Questions connexes