SoapMessageStage-Enumeration
Gibt die Verarbeitungsstufe einer SOAP-Nachricht an.
Namespace: System.Web.Services.Protocols
Assembly: System.Web.Services (in system.web.services.dll)
Syntax
'Declaration
Public Enumeration SoapMessageStage
'Usage
Dim instance As SoapMessageStage
public enum SoapMessageStage
public enum class SoapMessageStage
public enum SoapMessageStage
public enum SoapMessageStage
Member
Membername | Beschreibung | |
---|---|---|
![]() |
AfterDeserialize | Die Stufe nach der Deserialisierung einer SoapMessage aus einer SOAP-Nachricht in ein Objekt.
Während der SoapClientMessage-Verarbeitung beginnt die AfterDeserialize-Stufe, nachdem die SOAP-Nachricht mit der Antwort aus dem Aufruf einer XML-Webdienstmethode in ein Objekt deserialisiert wurde, jedoch bevor der Client die Ergebnisse der Deserialisierung empfängt. Während der SoapServerMessage-Verarbeitung beginnt die AfterDeserialize-Stufe, nachdem eine Netzwerkanforderung mit einer SOAP-Nachricht, die den Aufruf einer XML-Webdienstmethode darstellt, in ein Objekt deserialisiert wurde, jedoch bevor die Methode in diesem Objekt aufgerufen wird, die die XML-Webdienstmethode darstellt. |
![]() |
AfterSerialize | Die Stufe nach dem Serialisieren einer SoapMessage und vor dem Senden der SOAP-Nachricht über die Verbindung.
Während der SoapClientMessage-Verarbeitung beginnt die AfterSerialize-Stufe, nachdem ein Client eine XML-Webdienstmethode aufruft und die Parameter in XML serialisiert werden, jedoch bevor die SOAP-Nachricht mit diesem XML über das Netzwerk gesendet wird. Während der SoapServerMessage-Verarbeitung beginnt die AfterSerialize-Stufe, nachdem eine XML-Webdienstmethode zurückgegeben wird und alle Rückgabewerte in XML serialisiert werden, jedoch bevor die SOAP-Nachricht mit diesem XML über das Netzwerk gesendet wird. |
![]() |
BeforeDeserialize | Die Stufe vor der Deserialisierung einer SoapMessage aus der über das Netzwerk gesendeten SOAP-Nachricht in ein Objekt.
Während der SoapClientMessage-Verarbeitung beginnt die BeforeDeserialize-Stufe, nachdem die Netzwerkantwort aus dem Aufruf einer XML-Webdienstmethode empfangen wurde, jedoch genau bevor die Antwort mit der SOAP-Nachricht in ein Objekt deserialisiert wird. Während der SoapServerMessage-Verarbeitung beginnt die BeforeDeserialize-Stufe, nachdem eine Netzwerkanforderung mit der SOAP-Nachricht für den Aufruf einer XML-Webdienstmethode vom Webserver empfangen wird, jedoch bevor die SOAP-Nachricht in ein Objekt deserialisiert wird. |
![]() |
BeforeSerialize | Die Stufe vor dem Serialisieren einer SoapMessage.
Während der SoapClientMessage-Verarbeitung beginnt die BeforeSerialize-Stufe, nachdem ein Client eine XML-Webdienstmethode aufruft, jedoch bevor der Aufruf serialisiert wird. Während der SoapServerMessage-Verarbeitung beginnt die BeforeSerialize-Stufe, nachdem der Aufruf der XML-Webdienstmethode zurückgegeben wird, jedoch bevor die Rückgabewerte serialisiert und über die Verbindung zurück an den Client gesendet werden. |
Hinweise
ASP.NET stellt einen Erweiterbarkeitsmechanismus für den Aufruf von Webdiensten mithilfe von SOAP bereit. Den Kern des Erweiterbarkeitsmechanismus bildet eine SoapExtension, die eine Meldung auf bestimmten Stufen der Meldungsverarbeitung auf dem Client oder dem Server untersuchen und ändern kann. Diese Enumeration gibt die Verarbeitungsstufe der SoapMessage an.
Beispiel
Das folgende Codebeispiel ist ein Fragment einer SOAP-Erweiterung, das die ProcessMessage-Methode implementiert. Innerhalb der ProcessMessage-Methode erfolgt die Verarbeitung einer SoapMessage entsprechend dem SoapMessageStage.
' 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 'ProcessMessage
// 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.
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 void ProcessMessage(SoapMessage message) throws Exception
{
switch (message.get_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");
}
} //ProcessMessage
Plattformen
Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile für Pocket PC, Windows Mobile für Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.
Versionsinformationen
.NET Framework
Unterstützt in: 2.0, 1.1, 1.0
.NET Compact Framework
Unterstützt in: 2.0, 1.0
Siehe auch
Referenz
System.Web.Services.Protocols-Namespace
SoapMessage-Klasse
SoapExtension-Klasse