SmtpStatusCode Výčet
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Určuje výsledek odesílání e-mailů pomocí třídy SmtpClient.
public enum class SmtpStatusCode
public enum SmtpStatusCode
type SmtpStatusCode =
Public Enum SmtpStatusCode
- Dědičnost
Pole
| Name | Hodnota | Description |
|---|---|---|
| GeneralFailure | -1 | Transakce nemohla nastat. Tato chyba se zobrazí v případě, že zadaný hostitel SMTP nebyl nalezen. |
| SystemStatus | 211 | Stav systému nebo odpověď nápovědy systému. |
| HelpMessage | 214 | Služba vrátila zprávu nápovědy. |
| ServiceReady | 220 | Služba SMTP je připravená. |
| ServiceClosingTransmissionChannel | 221 | Služba SMTP ukončuje přenosový kanál. |
| Ok | 250 | E-mail byl úspěšně odeslán do služby SMTP. |
| UserNotLocalWillForward | 251 | Poštovní schránka uživatele se nenachází na přijímajícím serveru; server předá e-mail. |
| CannotVerifyUserWillAttemptDelivery | 252 | Zadaný uživatel není místní, ale přijímající služba SMTP zprávu přijala a pokusila se ji doručit. Tento stavový kód je definován v DOKUMENTU RFC 1123, který je k dispozici na https://www.ietf.orgadrese . |
| StartMailInput | 354 | Služba SMTP je připravená k příjmu e-mailového obsahu. |
| ServiceNotAvailable | 421 | Služba SMTP není k dispozici; server ukončuje přenosový kanál. |
| MailboxBusy | 450 | Cílová poštovní schránka se používá. |
| LocalErrorInProcessing | 451 | Služba SMTP nemůže dokončit požadavek. K této chybě může dojít v případě, že IP adresu klienta nejde přeložit (to znamená selhání zpětného vyhledávání). Tato chyba se může zobrazit také v případě, že byla doména klienta identifikována jako open relay nebo zdroj pro nevyžádané e-maily (spam). Podrobnosti naleznete v dokumentu RFC 2505, který je k dispozici na adrese https://www.ietf.org. |
| InsufficientStorage | 452 | Služba SMTP nemá dostatek úložiště k dokončení požadavku. |
| ClientNotPermitted | 454 | Klient nebyl ověřen nebo nemá povoleno odesílat poštu pomocí zadaného hostitele SMTP. |
| CommandUnrecognized | 500 | Služba SMTP nerozpozná zadaný příkaz. |
| SyntaxError | 501 | Syntaxe použitá k zadání příkazu nebo parametru je nesprávná. |
| CommandNotImplemented | 502 | Služba SMTP neimplementuje zadaný příkaz. |
| BadCommandSequence | 503 | Příkazy byly odeslány v nesprávné sekvenci. |
| CommandParameterNotImplemented | 504 | Služba SMTP neimplementuje zadaný parametr příkazu. |
| MustIssueStartTlsFirst | 530 | Server SMTP je nakonfigurovaný tak, aby přijímal pouze připojení TLS a klient SMTP se pokouší připojit pomocí připojení jiného typu než TLS. Řešením je, aby uživatel nastavil enableSsl=true u klienta SMTP. |
| MailboxUnavailable | 550 | Cílová poštovní schránka nebyla nalezena nebo nebyla přístupná. |
| UserNotLocalTryAlternatePath | 551 | Poštovní schránka uživatele se nenachází na přijímajícím serveru. Měli byste znovu odeslat pomocí zadaných informací o adrese. |
| ExceededStorageAllocation | 552 | Zpráva je příliš velká, aby byla uložena v cílové poštovní schránce. |
| MailboxNameNotAllowed | 553 | Syntaxe použitá k určení cílové poštovní schránky je nesprávná. |
| TransactionFailed | 554 | Transakce se nezdařila. |
Příklady
Následující příklad kódu zobrazí chybovou zprávu konzole při SmtpException vyvolání.
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();
}
}
Poznámky
Hodnoty v výčtu SmtpStatusCode určují hodnoty stavu odpovědi odeslané serverem SMTP (Simple Mail Transfer Protocol). Třídy SmtpException obsahují SmtpFailedRecipientsException vlastnosti, které vracejí StatusCode hodnoty.SmtpStatusCode
Protokol SMTP je definován v dokumentu RFC 2821, který je k dispozici na adrese https://www.ietf.org.