SoapExtension.ChainStream(Stream) Método

Definição

Quando sobrescrito numa classe derivada, permite a extensão SOAP aceder ao buffer de memória que contém o pedido ou resposta 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

Parâmetros

stream
Stream

Um buffer de memória contendo o pedido ou resposta SOAP.

Devoluções

A Stream representa um novo buffer de memória que esta extensão SOAP pode modificar.

Exemplos

O exemplo seguinte guarda tanto o passado em ChainStream como o Stream retornado de ChainStream nas variáveis oldStream membro e newStream, respetivamente.Stream

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

Observações

ChainStream garante que as extensões SOAP com a maior prioridade possam modificar os dados reais mais próximos da mensagem SOAP enviada ou devolvida pelo fio.

As extensões SOAP devem guardar as referências do Stream passado em ChainStream e o Stream retornado de ChainStream. Se a extensão SOAP estiver configurada para correr com um método de serviço Web XML, o Stream passed in ChainStream contém o pedido SOAP serializado no BeforeDeserializeSoapMessageStage. De forma semelhante, a Stream referência retornada de ChainStream é escrita quando ocorre a serialização e, assim, contém a resposta SOAP serializada no AfterSerializeSoapMessageStage.

Aplica-se a