Преобразование значения SocketError в строковое сообщение

Иметь SocketError значение, как его можно преобразовать в соответствующее строковое сообщение?

Предпосылки и пример:

Неудачный вызов, например, Socket.Receive бросит SocketException например Message "Существующее соединение было принудительно закрыто удаленным хостом" и SocketErrorCode == SocketError.ConnectionReset, Тем не менее, призывая Socket.ReceiveAsync даст только SocketError == SocketError.ConnectionReset,

Имея это SocketError.ConnectionReset (или любое другое значение), как я могу получить соответствующее сообщение?

1 ответ

Решение

Это можно сделать

  • с использованием FormatMessage Функция API (приведение SocketError для int),
  • или проще

    new Win32Exception((int) mySocketError).Message
    
Другие вопросы по тегам