SoapExtension.ChainStream(Stream) Metod
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
När det åsidosättas i en härledd klass, tillåter ett SOAP-tillägg åtkomst till minnesbufferten som innehåller SOAP-begäran eller -svaret.
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
Parametrar
- stream
- Stream
En minnesbuffert som innehåller SOAP-begäran eller -svaret.
Returer
En Stream som representerar en ny minnesbuffert som det här SOAP-tillägget kan ändra.
Exempel
I följande exempel sparas både den Stream skickade till ChainStream och den Stream som returneras från ChainStream i medlemsvariablerna oldStream respektive 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
Kommentarer
ChainStream ser till att SOAP-tillägg med högsta prioritet kan ändra de faktiska data som är närmast SOAP-meddelandet som skickas eller returneras via kabeln.
SOAP-tillägg bör spara referenser för den Stream som skickas till ChainStream och returneras Stream från ChainStream. Om SOAP-tillägget har konfigurerats för att köras med en XML-webbtjänstmetod innehåller det Stream som skickas till ChainStream den serialiserade SOAP-begäran i BeforeDeserializeSoapMessageStage. På samma sätt skrivs referensen Stream som returneras från ChainStream in i när serialiseringen inträffar och innehåller därmed det serialiserade SOAP-svaret i AfterSerializeSoapMessageStage.