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

Определение

Указывает результат отправки электронной почты с помощью класса SmtpClient.

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

Поля

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

Не удалось произойти транзакцию. Эта ошибка возникает, когда указанный узел SMTP не найден.

SystemStatus 211

Ответ на состояние системы или системную справку.

HelpMessage 214

Сообщение справки было возвращено службой.

ServiceReady 220

Служба SMTP готова.

ServiceClosingTransmissionChannel 221

Служба SMTP закрывает канал передачи.

Ok 250

Сообщение электронной почты успешно отправлено в службу SMTP.

UserNotLocalWillForward 251

Почтовый ящик пользователя не расположен на принимающем сервере; сервер перенаправит сообщение электронной почты.

CannotVerifyUserWillAttemptDelivery 252

Указанный пользователь не является локальным, но получая службу SMTP принял сообщение и попытался доставить его. Этот код состояния определен в RFC 1123, который доступен по адресу https://www.ietf.org.

StartMailInput 354

Служба SMTP готова к получению содержимого электронной почты.

ServiceNotAvailable 421

Служба SMTP недоступна; сервер закрывает канал передачи.

MailboxBusy 450

Используется целевой почтовый ящик.

LocalErrorInProcessing 451

Служба SMTP не может завершить запрос. Эта ошибка может возникать, если IP-адрес клиента не может быть разрешен (т. е. сбой обратного поиска). Эту ошибку также можно получить, если домен клиента был идентифицирован как открытый ретранслятор или источник для незапрошенной электронной почты (спам). Дополнительные сведения см. в статье RFC 2505, которая доступна по адресу https://www.ietf.org.

InsufficientStorage 452

Служба SMTP не имеет достаточного хранилища для выполнения запроса.

ClientNotPermitted 454

Клиент не прошел проверку подлинности или не разрешено отправлять почту с помощью указанного узла SMTP.

CommandUnrecognized 500

Служба SMTP не распознает указанную команду.

SyntaxError 501

Синтаксис, используемый для указания команды или параметра, неверный.

CommandNotImplemented 502

Служба SMTP не реализует указанную команду.

BadCommandSequence 503

Команды были отправлены в неправильной последовательности.

CommandParameterNotImplemented 504

Служба SMTP не реализует указанный параметр команды.

MustIssueStartTlsFirst 530

SMTP-сервер настроен для приема только TLS-подключений, и smtp-клиент пытается подключиться с помощью подключения, отличного от TLS. Решение предназначено для того, чтобы пользователь мог задать EnableSsl=true на SMTP-клиенте.

MailboxUnavailable 550

Целевой почтовый ящик не найден или недоступен.

UserNotLocalTryAlternatePath 551

Почтовый ящик пользователя не расположен на принимающем сервере. Необходимо повторно отправить данные адреса.

ExceededStorageAllocation 552

Сообщение слишком большое, чтобы храниться в целевом почтовом ящике.

MailboxNameNotAllowed 553

Синтаксис, используемый для указания целевого почтового ящика, неверный.

TransactionFailed 554

Сбой транзакции.

Примеры

В следующем примере кода отображается сообщение об ошибке в консоли при SmtpException возникновении ошибки.

public static void CreateMessageWithAttachment3(string server, string to)
{
    // Specify the file to be attached and sent.
    // This example assumes that a file named Data.xls exists in the
    // current working directory.
    string file = "data.xls";
    // Create a message and set up the recipients.
    MailMessage message = new MailMessage(
       "ReportMailer@contoso.com",
       to,
       "Quarterly data report",
       "See the attached spreadsheet.");

    // Create  the file attachment for this email message.
    Attachment data = new Attachment("Qtr3.xls");
    // Add time stamp information for the file.
    ContentDisposition disposition = data.ContentDisposition;
    disposition.CreationDate = System.IO.File.GetCreationTime(file);
    disposition.ModificationDate = System.IO.File.GetLastWriteTime(file);
    disposition.ReadDate = System.IO.File.GetLastAccessTime(file);
    // Add the file attachment to this email message.
    message.Attachments.Add(data);
    //Send the message.
    SmtpClient client = new SmtpClient(server);
    // Add credentials if the SMTP server requires them.
    client.Credentials = (ICredentialsByHost)CredentialCache.DefaultNetworkCredentials;
    // Notify user if an error occurs.
    try
    {
        client.Send(message);
    }
    catch (SmtpException e)
    {
        Console.WriteLine("Error: {0}", e.StatusCode);
    }
    finally
    {
        data.Dispose();
    }
}

Комментарии

Значения в SmtpStatusCode перечислении указывают значения состояния ответа, отправляемые сервером SMTP. Классы SmtpException содержат StatusCode свойства, возвращающие SmtpStatusCode значения.SmtpFailedRecipientsException

SMTP определяется в RFC 2821, доступной по адресу https://www.ietf.org.

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