SoapMessageStage Enum
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.
Anger bearbetningssteget för ett SOAP-meddelande.
public enum class SoapMessageStage
public enum SoapMessageStage
type SoapMessageStage =
Public Enum SoapMessageStage
- Arv
Fält
| Name | Värde | Description |
|---|---|---|
| BeforeSerialize | 1 | Fasen precis innan en SoapMessage serialiseras. |
| AfterSerialize | 2 | Fasen strax efter en SoapMessage serialiseras, men innan SOAP-meddelandet skickas via tråden. |
| BeforeDeserialize | 4 | Fasen precis innan en SoapMessage deserialiseras från SOAP-meddelandet som skickas över nätverket till ett objekt. |
| AfterDeserialize | 8 | Fasen strax efter en SoapMessage deserialiseras från ett SOAP-meddelande till ett objekt. |
Exempel
Följande exempel är ett fragment av ett SOAP-tillägg som implementerar ProcessMessage metoden. ProcessMessage I -metoden hanteras bearbetningen av en SoapMessage som är specifik för SoapMessageStage.
// 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
Kommentarer
ASP.NET tillhandahåller en utökningsmekanism för att anropa webbtjänster med SOAP. Utökningsmekanismen kretsar kring en SoapExtension som kan inspektera eller ändra ett meddelande i specifika steg i meddelandebearbetningen på antingen klienten eller servern. Den här uppräkningen anger bearbetningssteget för SoapMessage.
Följande tabell visar när varje steg inträffar under SOAP-klienten och serverbearbetningen.
SoapMessageStage |
Under SoapClientMessage bearbetningen | Under SoapServerMessage bearbetningen |
|---|---|---|
AfterDeserialize |
Inträffar efter att SOAP-meddelandet som innehåller svaret från en XML-webbtjänstmetodsanrop har deserialiserats till ett objekt, men innan klienten tar emot deserialiserade resultat. | Inträffar efter att en nätverksbegäran som innehåller ett SOAP-meddelande som representerar en XML-webbtjänstmetodsanrop deserialiseras till ett objekt, men innan metoden på objektet som representerar XML-webbtjänstmetoden anropas. |
AfterSerialize |
Inträffar när en klient anropar en XML-webbtjänstmetod och parametrarna serialiseras till XML, men innan SOAP-meddelandet som innehåller XML skickas över nätverket. | Inträffar när en XML-webbtjänstmetod returnerar och eventuella returvärden serialiseras till XML, men innan SOAP-meddelandet som innehåller XML skickas via nätverket. |
BeforeDeserialize |
Inträffar efter att nätverkssvaret från en XML-webbtjänstmetodanrop har tagits emot, men precis innan svaret som innehåller SOAP-meddelandet deserialiseras till ett objekt. | Inträffar efter att en nätverksbegäran som innehåller SOAP-meddelandet för en XML-webbtjänstmetodanrop tas emot av webbservern, men innan SOAP-meddelandet deserialiseras till ett objekt. |
BeforeSerialize |
Inträffar efter att en klient anropar en XML-webbtjänstmetod, men innan anropet serialiseras. | Inträffar efter att anropet till XML-webbtjänstmetoden returneras, men innan returvärdena serialiseras och skickas över kabeln tillbaka till klienten. |