ServerProcessing Перечисление
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Указывает статус обработки сообщения сервером.
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
- Наследование
- Атрибуты
Поля
Async | 2 | Вызов отослан асинхронно, что указывает, что ответные данные должны содержаться в приемнике стека для дальнейшей обработки. |
Complete | 0 | Сервер обрабатывает сообщение асинхронно. |
OneWay | 1 | Сообщение было отослано, и ответ не может быть передан. |
Примеры
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
Применяется к
Совместная работа с нами на GitHub
Источник этого содержимого можно найти на GitHub, где также можно создавать и просматривать проблемы и запросы на вытягивание. Дополнительные сведения см. в нашем руководстве для участников.