Freigeben über


ServerProcessing Enumeration

Definition

Bezeichnet den Status der Verarbeitung einer Servermeldung.

public enum class ServerProcessing
[System.Serializable]
public enum ServerProcessing
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public enum ServerProcessing
[<System.Serializable>]
type ServerProcessing = 
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type ServerProcessing = 
Public Enum ServerProcessing
Vererbung
ServerProcessing
Attribute

Felder

Async 2

Der Aufruf wurde asynchron gesendet. Dies gibt an, dass die Senke Antwortdaten im Stapel für die spätere Verarbeitung speichern muss.

Complete 0

Der Server hat die Meldung synchron verarbeitet.

OneWay 1

Die Meldung wurde gesendet, und es kann keine Antwort gesendet werden.

Beispiele

public ServerProcessing ProcessMessage(IServerChannelSinkStack myServerChannelSinkStack,
   IMessage requestMsg, ITransportHeaders requestHeaders, Stream requestStream,
   out IMessage msg, out ITransportHeaders responseHeaders,
   out Stream responseStream)
{
   if (myBoolEnabled)
      LoggingHelper.PrintRequest(myTextWriterOutput, requestHeaders, ref requestStream);

   myServerChannelSinkStack.Push(this, null);
   ServerProcessing myServerProcessing =
      myNewNextSink.ProcessMessage(myServerChannelSinkStack, requestMsg, requestHeaders, requestStream, out msg,
      out responseHeaders, out responseStream);

   Console.WriteLine("ServerProcessing.Complete value is:   " +ServerProcessing.Complete);
   Console.WriteLine("ServerProcessing.OneWay Value is:     " +ServerProcessing.OneWay);
   Console.WriteLine("ServerProcessing.Async value is:      " +ServerProcessing.Async);

   switch (myServerProcessing)
   {
      case ServerProcessing.Complete:
      {
         myServerChannelSinkStack.Pop(this);
         if (myBoolEnabled)
            LoggingHelper.PrintResponse(myTextWriterOutput, responseHeaders, ref responseStream);
         break;
      }

      case ServerProcessing.OneWay:
      {
         myServerChannelSinkStack.Pop(this);
         break;
      }

      case ServerProcessing.Async:
      {
         myServerChannelSinkStack.Store(this, null);
         break;
      }
   }
   return myServerProcessing;
}
Public Function ProcessMessage(ByVal myServerChannelSinkStack As IServerChannelSinkStack, _
            ByVal requestMsg As IMessage, ByVal requestHeaders As ITransportHeaders, ByVal requestStream As Stream, ByRef _
            msg As IMessage, ByRef responseHeaders As ITransportHeaders, ByRef responseStream _
            As Stream) As ServerProcessing Implements IServerChannelSink.ProcessMessage
   If myBoolEnabled Then
      LoggingHelper.PrintRequest(myTextWriterOutput, requestHeaders, requestStream)
   End If
   myServerChannelSinkStack.Push(Me, Nothing)
   Dim myServerProcessing As ServerProcessing = myNewNextSink.ProcessMessage( _
    myServerChannelSinkStack, requestMsg, requestHeaders, requestStream, msg, responseHeaders, responseStream)

   Console.WriteLine("ServerProcessing.Complete value is:   " + ServerProcessing.Complete.Tostring())
   Console.WriteLine("ServerProcessing.OneWay Value is:     " + ServerProcessing.OneWay.Tostring())
   Console.WriteLine("ServerProcessing.Async value is:      " + ServerProcessing.Async.Tostring())

   Select Case myServerProcessing
      Case ServerProcessing.Complete
         myServerChannelSinkStack.Pop(Me)
         If myBoolEnabled Then
            LoggingHelper.PrintResponse(myTextWriterOutput, responseHeaders, responseStream)
         End If

      Case ServerProcessing.OneWay
         myServerChannelSinkStack.Pop(Me)

      Case ServerProcessing.Async
         myServerChannelSinkStack.Store(Me, Nothing)

   End Select
   Return myServerProcessing
End Function 'ProcessMessage

Gilt für: