SoapExtension.ChainStream(Stream) Metodo

Definizione

Quando sottoposto a override in una classe derivata, consente a un'estensione SOAP di accedere al buffer di memoria contenente la richiesta o la risposta SOAP.

public:
 virtual System::IO::Stream ^ ChainStream(System::IO::Stream ^ stream);
public virtual System.IO.Stream ChainStream(System.IO.Stream stream);
abstract member ChainStream : System.IO.Stream -> System.IO.Stream
override this.ChainStream : System.IO.Stream -> System.IO.Stream
Public Overridable Function ChainStream (stream As Stream) As Stream

Parametri

stream
Stream

Buffer di memoria contenente la richiesta o la risposta SOAP.

Valori restituiti

Oggetto Stream che rappresenta un nuovo buffer di memoria che questa estensione SOAP può modificare.

Esempio

Nell'esempio seguente vengono salvati sia l'oggetto passato in Stream che quello ChainStream restituito rispettivamente nelle Stream variabili ChainStream membro e oldStream.newStream

public:
   virtual Stream^ ChainStream( Stream^ stream ) override
   {
      oldStream = stream;
      newStream = gcnew MemoryStream;
      return newStream;
   }
public override Stream ChainStream( Stream stream ){
    oldStream = stream;
    newStream = new MemoryStream();
    return newStream;
}
Public Overrides Function ChainStream(stream As Stream) As Stream
    m_oldStream = stream
    m_newStream = New MemoryStream()
    Return m_newStream
End Function

Commenti

ChainStream assicura che le estensioni SOAP con la priorità più alta possano modificare i dati effettivi più vicini al messaggio SOAP inviato o restituito in rete.

Le estensioni SOAP devono salvare i riferimenti dell'oggetto Stream passato in ChainStream e il Stream restituito da ChainStream. Se l'estensione SOAP è configurata per l'esecuzione con un metodo di servizio Web XML, l'oggetto Stream passato in ChainStream contiene la richiesta SOAP serializzata in BeforeDeserializeSoapMessageStage. Analogamente, il Stream riferimento restituito da ChainStream viene scritto in quando si verifica la serializzazione e contiene quindi la risposta SOAP serializzata in AfterSerializeSoapMessageStage.

Si applica a