SoapMessageStage 列挙型
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
SOAP メッセージの処理ステージを指定します。
public enum class SoapMessageStage
public enum SoapMessageStage
type SoapMessageStage =
Public Enum SoapMessageStage
- 継承
フィールド
| 名前 | 値 | 説明 |
|---|---|---|
| BeforeSerialize | 1 | SoapMessageがシリアル化される直前のステージ。 |
| AfterSerialize | 2 | SoapMessageがシリアル化された直後の、SOAP メッセージがネットワーク経由で送信される前のステージ。 |
| BeforeDeserialize | 4 | ネットワーク経由で送信された SOAP メッセージからオブジェクトに SoapMessage が逆シリアル化される直前のステージ。 |
| AfterDeserialize | 8 | SoapMessageが SOAP メッセージからオブジェクトに逆シリアル化された直後のステージ。 |
例
次の例は、 ProcessMessage メソッドを実装する SOAP 拡張機能のフラグメントです。 ProcessMessageメソッド内では、SoapMessageの処理は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
注釈
ASP.NET は、SOAP を使用して Web サービスを呼び出すための機能拡張メカニズムを提供します。 拡張メカニズムは、クライアントまたはサーバーでのメッセージ処理の特定の段階でメッセージを検査または変更できる SoapExtension を中心に展開します。 この列挙体は、 SoapMessageの処理ステージを指定します。
次の表は、SOAP クライアントとサーバーの処理中に各ステージが発生するタイミングを示しています。
SoapMessageStage |
SoapClientMessage処理中 | SoapServerMessage処理中 |
|---|---|---|
AfterDeserialize |
XML Web サービス メソッドの呼び出しからの応答を含む SOAP メッセージがオブジェクトに逆シリアル化された後、クライアントが逆シリアル化された結果を受信する前に発生します。 | XML Web サービス メソッドの呼び出しを表す SOAP メッセージを含むネットワーク要求がオブジェクトに逆シリアル化された後、XML Web サービス メソッドを表すそのオブジェクトのメソッドが呼び出される前に発生します。 |
AfterSerialize |
クライアントが XML Web サービス メソッドを呼び出し、パラメーターが XML にシリアル化された後、その XML を含む SOAP メッセージがネットワーク経由で送信される前に発生します。 | XML Web サービス メソッドが戻り値を返し、戻り値が XML にシリアル化された後、その XML を含む SOAP メッセージがネットワーク経由で送信される前に発生します。 |
BeforeDeserialize |
XML Web サービス メソッドの呼び出しからのネットワーク応答を受信した後、SOAP メッセージを含む応答がオブジェクトに逆シリアル化される直前に発生します。 | XML Web サービス メソッド呼び出しの SOAP メッセージを含むネットワーク要求が Web サーバーによって受信された後、SOAP メッセージがオブジェクトに逆シリアル化される前に発生します。 |
BeforeSerialize |
クライアントが XML Web サービス メソッドを呼び出した後、呼び出しがシリアル化される前に発生します。 | XML Web サービス メソッドへの呼び出しが戻った後、戻り値がシリアル化され、ネットワーク経由でクライアントに送信される前に発生します。 |