Question

Quelqu'un sait-il comment convertir un System.Xml.XmlNode en System.Xml.Linq.XNode?

Était-ce utile?

La solution

Je n'ai jamais essayé, mais ma première pensée serait quelque chose comme:

XmlNode myNode;
XNode translatedNode = XDocument.Parse(myNode.OuterXml);

Autres conseils

Le blog d'Eric White est l'endroit idéal pour les conversions XML / XLINQ et autres. Je sais que cette question est antérieure à la publication du message, mais je l'ai trouvée en regardant un autre Q, alors peut-être que les gens le rencontrent encore assez. Son blog contient beaucoup de LINQ optimisés, comme je soupçonne que l’appel .Parse () pour la réponse d’origine est non-optimale, et bien je sais que ce n’est pas le cas.

Parse exigera que le XML soit chargé en une seule fois. Eric a utilisé des méthodes d'extension qui traitent la conversion XML avec XmlReader / Writer's. Ces méthodes sont capables de diffuser l’entrée. Par conséquent, si votre XML est d’une taille substantielle, vous devez les utiliser.

Je ne pense pas, mais pourquoi auriez-vous besoin de le faire? Chacune est la "feuille" la plus basse de la structure XML pour différentes manières de lire le document.

Si vous utilisez Linq to Xml et XDocument, vous aurez toute la syntaxe et les nouvelles fonctionnalités du style linq, mais en réalité, tout ce qui concerne la sélection d'un nœud.

Une fois que vous avez l'élément auquel vous avez affaire, pourquoi avez-vous besoin de changer?

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top