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

Определение

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

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

Поля

AfterDeserialize 8

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

AfterSerialize 2

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

BeforeDeserialize 4

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

BeforeSerialize 1

Стадия, непосредственно предшествующая сериализации сообщения SoapMessage.

Примеры

В следующем примере показан фрагмент расширения 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, но до сериализации возвращаемых значений и отправки по сети обратно клиенту.

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

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