←back to thread

123 points eterm | 1 comments | | HN request time: 0.209s | source
1. darrylb42 ◴[] No.43938902[source]
This does not appear to be support by SOAP or WCF. From the SOAP specification:

"Bindings MAY provide for streaming when processing messages. That is, SOAP nodes MAY begin processing a received SOAP message as soon as the necessary information is available. SOAP processing is specified in terms of SOAP message infosets (see 5. SOAP Message Construct). Although streaming SOAP receivers will acquire such XML infosets incrementally, SOAP processing MUST yield results identical to those that would have been achieved if the entire SOAP envelope were available prior to the start of processing. For example, as provided in 2.6 Processing SOAP Messages, identification of targeted SOAP header blocks, and checking of all mustUnderstand attributes is to be done before successful processing can proceed. Depending on the representation used for the XML infoset, and the order in which it is transmitted, this rule might limit the degree to which streaming can be achieved."

https://www.w3.org/TR/soap12-part1/

The critical note is the output for streamed, or buffered must the the same so it does not look like infinite streams can be supported.

I also played with your sample application to see if there was any indication of the connection dropping.

I had an interesting result switching to the NetTcp binding. On the client it is unable to exit until the max size of the incoming message is hit. The server continues running as there are no sent message quotas.