2009-10-29 2 views
1

WebRequest의 스트림에 XMLTextWriter를 작성했습니다. 모든 것은 다음과 같이 작동합니다 :XMLTextWriter에서 XMLDocument

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 

XMLDocument 유형으로 쓰여지고있는이 XML을 어떻게 가로 챌 수 있습니까? 스트림에서 스트리밍을 시도했지만 스트림에서 읽기를 지원하지 않습니다. 예외 (그것은 나를 놀라게하지 않았다).

감사

나는 당신 때문에 그것이 그것의 정의에 의해, 스트림을 가로 챌 수 있다고 생각하지 않습니다
+0

누군가가 도울 수 있다면 여전히 나에게 문제가됩니다. XML 전체를 다른 TextWriter로 다시 작성해야합니까? –

답변

1

:

생성하는 빠르고, 캐시되지 않으며 앞으로 유일한 방법을 제공하는 작가 이 및 앞으로 만되는 문제를

비 캐시 스트림.

그래서 ... 역순으로하는 것을 막는 것이 있습니까?

XmlDocument에 XML을 쓰고 끝나면 XML을 XmlWriter (이 경우 사용자의 요청 스트림으로 출력하는 XmlTextWriter)로 출력하기 위해 XmlDocument.WriteTo를 호출하십시오.

+0

거의 내가 정확히 무엇을 끝내 었는지. 결코 늦지 않은 것이 더 좋습니다. 감사합니다! –