Domanda

Qualcuno sa bene come convertire un nodo System.Xml.Xml in System.Xml.Linq.XNode?

È stato utile?

Soluzione

Non ho mai provato, ma il mio primo pensiero sarebbe qualcosa del tipo:

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

Altri suggerimenti

il blog di Eric White è il posto giusto per fantastiche conversioni XML / XLINQ e simili. So che questa domanda è precedente al post, ma l'ho trovata mentre guardavo qualche altra Q, quindi forse la gente si imbatte ancora in una cosa del genere. Il suo blog ha molti LINQ ottimizzati, come sospetto che la richiesta .Parse () per la risposta originale non sia ottimale, anzi, lo so, non lo è.

Parse richiederà che l'XML sia caricato in un colpo solo, Eric ha usato metodi di estensione che elaborano la conversione XML con XmlReader / Writer's. Questi metodi sono in grado di eseguire lo streaming dell'input, quindi se il tuo XML ha dimensioni sostitutive, devi usarli.

Non credo ci sia, ma perché dovresti farlo? Ognuna è la 'foglia' più bassa della struttura Xml per diversi modi di leggere il documento.

Se usi Linq to Xml e XDocument avrai tutta la sintassi in stile linq e le nuove funzionalità, ma in realtà tutto ciò che riguarda la selezione di un nodo.

Una volta che hai l'elemento con cui hai a che fare, perché devi cambiare?

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top