Possible d'écrire du XML dans la mémoire avec la XmlWriter?
Je suis entrain de créer un ASHX qui renvoie XML toutefois, il s'attend à un chemin d'accès lorsque je ne
XmlWriter writer = XmlWriter.Create(returnXML, settings)
Mais returnXML est juste une chaîne vide en ce moment (devinez qui ne fonctionne pas), cependant j'ai besoin d'écrire du XML à quelque chose que je peux ensuite envoyer le texte de la réponse. J'ai essayé XmlDocument, mais il m'a donné une erreur attend une chaîne de caractères. Ce qui me manque ici?
Vous devez vous connecter pour publier un commentaire.
Si vous voulez vraiment écrire dans la mémoire, de passer dans un
StringWriter
ou unStringBuilder
comme ceci:Si vous voulez écrire directement à la réponse, cependant, vous pourriez passer dans
HttpResponse.Output
qui est unTextWriter
à la place:Il manquait quelque chose de mon côté: rinçage de la XmlWriter du tampon:
Ensuite, utilisez le xmlWriter à faire tout le xml de l'écriture, et qui écrit directement à l'objet StringBuilder.
Edit: Merci à Jon Skeet commentaire:
La meilleure façon de le faire est d'écrire directement à la Réponse au Flux de Sortie. Ses un flux intégré à ASP.NET pour vous permettre d'écrire ce que la sortie comme un ruisseau, dans ce cas, vous pouvez écrire du XML pour elle.