J'ai une instance XElement
et je souhaite écrire dans un flux en utilisant la classe XmlWriter
. Pourquoi? Eh bien, l'un des paramètres de configuration définit s'il faut utiliser Xml binaire ou non. Sur la base de ce paramètre, une instance XmlWriter
appropriée est créée - soit par XmlWriter.Create(stream)
ou XmlDictionaryWriter.CreateBinaryWriter(stream))
.Comment écrire System.Xml.Linq.XElement en utilisant XmlWriter dans un flux
Quoi qu'il en soit, je suis en train le code suivant, mais il laisse le flux vide:
using (var stream = new MemoryStream())
{
var xmlReader = new XDocument(xml).CreateReader();
xmlReader.MoveToContent();
var xmlWriter = GetXmlWriter(stream);
xmlWriter.WriteNode(xmlReader, true);
return stream.ToArray();
}
J'ai vérifié, xmlReader
est correctement aligné après MoveToContent
à l'élément XML racine.
Je dois faire quelque chose de mal, mais quoi?
Merci.
C'est tout. Je n'ai pas vidé l'écrivain. Merci. – mark
BTW, Merci pour le commentaire, je vais modifier ma mise en œuvre en conséquence. – mark