SoapMessageStage Enumeração
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Especifica o estágio de processamento de uma mensagem SOAP.
public enum class SoapMessageStage
public enum SoapMessageStage
type SoapMessageStage =
Public Enum SoapMessageStage
- Herança
Campos
AfterDeserialize | 8 | O estágio imediatamente após um SoapMessage ser desserializado de uma mensagem SOAP para um objeto. |
AfterSerialize | 2 | O estágio imediatamente após um SoapMessage ser serializada, mas antes da mensagem SOAP ser enviada pela rede. |
BeforeDeserialize | 4 | O estágio imediatamente antes de um SoapMessage ser desserializado da mensagem SOAP enviada pela rede para um objeto. |
BeforeSerialize | 1 | O estágio imediatamente antes de um SoapMessage que está sendo serializado. |
Exemplos
O exemplo a seguir é um fragmento de uma extensão SOAP, que implementa o ProcessMessage método . Dentro do método , o ProcessMessage processamento de um SoapMessage é tratado de forma específica para o 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
Comentários
ASP.NET fornece um mecanismo de extensibilidade para chamar Serviços Web usando SOAP. O mecanismo de extensibilidade gira em torno de um SoapExtension que pode inspecionar ou modificar uma mensagem em estágios específicos no processamento de mensagens no cliente ou no servidor. Essa enumeração especifica o estágio de processamento do SoapMessage.
A tabela a seguir mostra quando cada estágio ocorre durante o processamento de cliente e servidor SOAP.
SoapMessageStage |
Durante o SoapClientMessage processamento | Durante o SoapServerMessage processamento |
---|---|---|
AfterDeserialize |
Ocorre depois que a mensagem SOAP que contém a resposta de uma invocação de método de serviço Web XML foi desserializada em um objeto , mas antes do cliente receber os resultados desserializados. | Ocorre depois que uma solicitação de rede que contém uma mensagem SOAP que representa uma invocação de método de serviço Web XML é desserializada em um objeto , mas antes do método nesse objeto que representa o método de serviço Web XML é chamado. |
AfterSerialize |
Ocorre depois que um cliente invoca um método de serviço Web XML e os parâmetros são serializados em XML, mas antes da mensagem SOAP que contém esse XML é enviado pela rede. | Ocorre depois que um método de serviço Web XML retorna e todos os valores retornados são serializados em XML, mas antes da mensagem SOAP que contém esse XML é enviado pela rede. |
BeforeDeserialize |
Ocorre depois que a resposta de rede de uma invocação de método de serviço Web XML foi recebida, mas pouco antes da resposta que contém a mensagem SOAP ser desserializada em um objeto . | Ocorre depois que uma solicitação de rede que contém a mensagem SOAP para uma invocação de método de serviço Web XML é recebida pelo servidor Web, mas antes da mensagem SOAP ser desserializada em um objeto . |
BeforeSerialize |
Ocorre depois que um cliente invoca um método de serviço Web XML, mas antes da invocação ser serializada. | Ocorre após a invocação para o método de serviço Web XML retornar, mas antes dos valores retornados serem serializados e enviados pela transmissão de volta para o cliente. |