Condividi tramite


SoapExtension.ChainStream(Stream) Metodo

Definizione

Quando se ne esegue l'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.

Restituisce

Stream

Oggetto Stream che rappresenta un nuovo buffer di memoria che può essere modificato dall'estensione SOAP.

Esempio

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

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 l'oggetto 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