SoapMessageStage Перечисление

Определение

Указывает этап обработки сообщения SOAP.

public enum class SoapMessageStage
public enum SoapMessageStage
type SoapMessageStage = 
Public Enum SoapMessageStage
Наследование
SoapMessageStage

Поля

Имя Значение Описание
BeforeSerialize 1

Этап непосредственно перед SoapMessage сериализацией.

AfterSerialize 2

Этап сразу после SoapMessage сериализации, но перед отправкой сообщения SOAP по проводу.

BeforeDeserialize 4

Этап незадолго до SoapMessage десериализации сообщения SOAP, отправляемого по сети в объект.

AfterDeserialize 8

Этап сразу после SoapMessage десериализации сообщения SOAP в объект.

Примеры

В следующем примере представлен фрагмент расширения SOAP, реализующего ProcessMessage метод. В методе 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. Механизм расширяемости вращается вокруг SoapExtension того, что может проверять или изменять сообщение на определенных этапах обработки сообщений на клиенте или сервере. Это перечисление указывает этап обработки объекта SoapMessage.

В следующей таблице показано, когда каждый этап происходит во время обработки клиента и сервера SOAP.

SoapMessageStage Во время SoapClientMessage обработки Во время SoapServerMessage обработки
AfterDeserialize Происходит после того, как сообщение SOAP, содержащее ответ из вызова метода веб-службы XML, было десериализовано в объект, но до того, как клиент получает десериализированные результаты. Происходит после того, как сетевой запрос, содержащий сообщение SOAP, представляющее вызов метода веб-службы XML, десериализируется в объект, но до метода, представляющего метод веб-службы XML, вызывается.
AfterSerialize Происходит после вызова метода веб-службы XML и сериализации параметров в XML, но до сообщения SOAP, содержащего этот XML-код, отправляется по сети. Происходит после возврата метода веб-службы XML, а все возвращаемые значения сериализуются в XML, но до сообщения SOAP, содержащего, что XML отправляется по сети.
BeforeDeserialize Происходит после получения сетевого ответа от вызова метода веб-службы XML, но непосредственно перед ответом, содержащим сообщение SOAP, десериализуется в объект. Происходит после того, как сетевой запрос, содержащий сообщение SOAP для вызова метода веб-службы XML, получается веб-сервером, но до десериализации сообщения SOAP в объект.
BeforeSerialize Происходит после вызова клиента метода веб-службы XML, но до сериализации вызова. Происходит после вызова метода веб-службы XML, но до сериализации возвращаемых значений и отправки по проводу обратно клиенту.

Применяется к

См. также раздел