SoapMessageStage Enumeration
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Gibt die Verarbeitungsstufe einer SOAP-Nachricht an.
public enum class SoapMessageStage
public enum SoapMessageStage
type SoapMessageStage =
Public Enum SoapMessageStage
- Vererbung
Felder
AfterDeserialize | 8 | Die Stufe nach der Deserialisierung einer SoapMessage aus einer SOAP-Nachricht in ein Objekt. |
AfterSerialize | 2 | Die Stufe nach dem Serialisieren einer SoapMessage und vor dem Senden der SOAP-Nachricht über die Verbindung. |
BeforeDeserialize | 4 | Die Stufe vor der Deserialisierung einer SoapMessage aus der über das Netzwerk gesendeten SOAP-Nachricht in ein Objekt. |
BeforeSerialize | 1 | Die Stufe vor dem Serialisieren einer SoapMessage. |
Beispiele
Das folgende Beispiel ist ein Fragment einer SOAP-Erweiterung, die die ProcessMessage -Methode implementiert. Innerhalb der ProcessMessage -Methode wird die Verarbeitung von SoapMessage speziell für die SoapMessageStageverarbeitet.
// Process the SOAP message received and write to log file.
void ProcessMessage( SoapMessage^ message )
{
switch ( message->Stage )
{
case SoapMessageStage::BeforeSerialize:
break;
case SoapMessageStage::AfterSerialize:
WriteOutput( message );
break;
case SoapMessageStage::BeforeDeserialize:
WriteInput( message );
break;
case SoapMessageStage::AfterDeserialize:
break;
default:
throw gcnew Exception( "invalid stage" );
}
}
// Process the SOAP message received and write to log file.
public override void ProcessMessage(SoapMessage message)
{
switch (message.Stage)
{
case SoapMessageStage.BeforeSerialize:
break;
case SoapMessageStage.AfterSerialize:
WriteOutput( message );
break;
case SoapMessageStage.BeforeDeserialize:
WriteInput( message );
break;
case SoapMessageStage.AfterDeserialize:
break;
default:
throw new Exception("invalid stage");
}
}
' Process the SOAP message received and write to log file.
Public Overrides Sub ProcessMessage(message As SoapMessage)
Select Case message.Stage
Case SoapMessageStage.BeforeSerialize
Case SoapMessageStage.AfterSerialize
WriteOutput(message)
Case SoapMessageStage.BeforeDeserialize
WriteInput(message)
Case SoapMessageStage.AfterDeserialize
Case Else
Throw New Exception("invalid stage")
End Select
End Sub
Hinweise
ASP.NET bietet einen Erweiterbarkeitsmechanismus zum Aufrufen von Webdiensten mithilfe von SOAP. Der Erweiterbarkeitsmechanismus dreht sich um einen SoapExtension , der eine Nachricht in bestimmten Phasen der Nachrichtenverarbeitung entweder auf dem Client oder auf dem Server überprüfen oder ändern kann. Diese Enumeration gibt die Verarbeitungsphase von an SoapMessage.
Die folgende Tabelle zeigt, wann die einzelnen Phasen während der SOAP-Client- und -Serververarbeitung auftreten.
SoapMessageStage |
Während der SoapClientMessage Verarbeitung | Während der SoapServerMessage Verarbeitung |
---|---|---|
AfterDeserialize |
Tritt auf, nachdem die SOAP-Nachricht, die die Antwort eines Aufrufs einer XML-Webdienstmethode enthält, in ein Objekt deserialisiert wurde, aber bevor der Client die deserialisierten Ergebnisse empfängt. | Tritt auf, nachdem eine Netzwerkanforderung, die eine SOAP-Nachricht enthält, die einen Aufruf der XML-Webdienstmethode darstellt, in einem -Objekt deserialisiert wurde, aber vor der -Methode für dieses Objekt aufgerufen wird, das die XML-Webdienstmethode darstellt. |
AfterSerialize |
Tritt auf, nachdem ein Client eine XML-Webdienstmethode aufruft und die Parameter in XML serialisiert wurden, jedoch vor der SOAP-Nachricht, die diesen XML-Code enthält, über das Netzwerk gesendet wird. | Tritt auf, nachdem eine XML-Webdienstmethode zurückgegeben und alle Rückgabewerte in XML serialisiert wurden, aber bevor die SOAP-Nachricht, die diese XML enthält, über das Netzwerk gesendet wird. |
BeforeDeserialize |
Tritt auf, nachdem die Netzwerkantwort von einem Aufruf der XML-Webdienstmethode empfangen wurde, aber kurz bevor die Antwort, die die SOAP-Nachricht enthält, in ein Objekt deserialisiert wird. | Tritt auf, nachdem eine Netzwerkanforderung, die die SOAP-Nachricht für einen Aufruf einer XML-Webdienstmethode enthält, vom Webserver empfangen wird, aber bevor die SOAP-Nachricht in ein -Objekt deserialisiert wird. |
BeforeSerialize |
Tritt auf, nachdem ein Client eine XML-Webdienstmethode aufruft, aber vor der Serialisierung des Aufrufs. | Tritt auf, nachdem der Aufruf der XML-Webdienstmethode zurückgegeben wird, aber bevor die Rückgabewerte serialisiert und über die Verbindung zurück an den Client gesendet werden. |