XMLTextWriter zu XMLDocument
-
10-07-2019 - |
Frage
Ich habe eine XMLTextWriter zu einem Strom eines WebRequest Schreiben bekommt. Alles funktioniert, wie es sollte:
Dim wr As WebRequest = WebRequest.Create("https://wwwcie.ups.com/ups.app/xml/ShipAccept")
With wr
.Method = "POST"
.ContentType = "application/x-www-form-urlencoded"
End With
Dim requestStream As Stream = wr.GetRequestStream
Using requestStream
Dim x As New XmlTextWriter(requestStream, Encoding.UTF8)
Using x
With x
.WriteStartDocument()
'XML
.WriteStartElement("ShipmentAcceptRequest")
'ShipmentAcceptRequest
.WriteStartElement("Request")
'Request
.WriteElementString("RequestAction", sar.Request.RequestAction)
'/Request
.WriteEndElement()
.WriteElementString("ShipmentDigest", sar.ShipmentDigest)
'/ShipmentAcceptRequest
.WriteEndElement()
'/XML
.WriteEndDocument()
.Flush()
End With
End Using
End Using
Wie kann ich diese XML abfangen, die als XMLDocument Art geschrieben wird? Ich versuchte, es aus dem Strom hängen bleibt, aber das gab mir einen ‚Der Strom nicht das Lesen unterstützen.‘ Ausnahme (was mich nicht überraschen, haben).
Danke
Lösung
Ich glaube nicht, dass Sie den Strom abfangen kann, weil durch sie der Definition ist:
ein Schriftsteller, die einen schnellen, nicht-zwischengespeichert, zukunfts einzigen Weg zur Erzeugung von Strömen
bietet
nicht im Cache gespeichert und Vorwärts- Ihre Probleme dort zu sein.
So ... alles hindert Sie daran, es in umgekehrter Reihenfolge zu tun?
Schreiben Sie XML in ein XmlDocument, und wenn Sie fertig Anruf XmlDocument.WriteTo zur Ausgabe des XML in ein XmlWriter (in diesem Fall Ihre XmlTextWriter Ausgeben auf Ihre Anfrage Stream) sind.