SmtpClient.Send Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Sendet eine E-Mail-Nachricht an einen SMTP-Server zur Zustellung. Diese Methoden blockieren, während die Nachricht übertragen wird.
Überlädt
| Name | Beschreibung |
|---|---|
| Send(MailMessage) |
Sendet die angegebene Nachricht zur Übermittlung an einen SMTP-Server. |
| Send(String, String, String, String) |
Sendet die angegebene E-Mail-Nachricht zur Zustellung an einen SMTP-Server. Der Nachrichtensender, Empfänger, Betreff und Nachrichtentext werden mithilfe von String Objekten angegeben. |
Send(MailMessage)
- Quelle:
- SmtpClient.cs
- Quelle:
- SmtpClient.cs
- Quelle:
- SmtpClient.cs
- Quelle:
- SmtpClient.cs
- Quelle:
- SmtpClient.cs
Sendet die angegebene Nachricht zur Übermittlung an einen SMTP-Server.
public:
void Send(System::Net::Mail::MailMessage ^ message);
public void Send(System.Net.Mail.MailMessage message);
member this.Send : System.Net.Mail.MailMessage -> unit
Public Sub Send (message As MailMessage)
Parameter
- message
- MailMessage
A MailMessage , das die zu sendende Nachricht enthält.
Ausnahmen
message ist null.
Dies SmtpClient hat bereits einen weiteren Sendevorgang ausgeführt.
- oder -
From ist null.
- oder -
Es sind keine Empfänger in To, CCund Bcc Eigenschaften angegeben.
- oder -
DeliveryMethod-Eigenschaft ist auf Network und Host ist .null
- oder -
DeliveryMethod die Eigenschaft auf die leere Zeichenfolge ("") festgelegt Network ist und Host gleich der leeren Zeichenfolge ist.
- oder -
DeliveryMethod eigenschaft wird auf Network null Port , eine negative Zahl oder größer als 65.535 festgelegt.
Dieses Objekt wurde verworfen.
Fehler bei der Verbindung mit dem SMTP-Server.
- oder -
Fehler bei der Authentifizierung:
- oder -
Beim Vorgang ist ein Timeout aufgetreten.
- oder -
EnableSsl ist auf true die Eigenschaft festgelegt, die Eigenschaft ist jedoch DeliveryMethod auf SpecifiedPickupDirectory oder PickupDirectoryFromIisfestgelegt.
- oder -
EnableSsl ist auf "StartTLS" festgelegt true, , aber der SMTP-E-Mail-Server hat nicht als Antwort auf den EHLO-Befehl angekündigt.
Die message Empfänger konnten nicht an zwei oder mehr Empfänger übermittelt werden in To, , CCoder Bcc.
Beispiele
Im folgenden Codebeispiel wird die Verwendung dieser Methode veranschaulicht.
public static void CreateTestMessage2(string server)
{
string to = "jane@contoso.com";
string from = "ben@contoso.com";
MailMessage message = new MailMessage(from, to);
message.Subject = "Using the new SMTP client.";
message.Body = @"Using this new feature, you can send an email message from an application very easily.";
SmtpClient client = new SmtpClient(server);
// Credentials are necessary if the server requires the client
// to authenticate before it will send email on the client's behalf.
client.UseDefaultCredentials = true;
try
{
client.Send(message);
}
catch (Exception ex)
{
Console.WriteLine("Exception caught in CreateTestMessage2(): {0}",
ex.ToString());
}
}
Hinweise
Diese Methode blockiert, während die E-Mail übertragen wird. Sie können einen Timeoutwert mithilfe der Timeout Eigenschaft angeben, um sicherzustellen, dass die Methode nach einer bestimmten Zeitspanne zurückgegeben wird.
Vor dem Aufrufen dieser Methode müssen die und Port die Host Eigenschaften entweder über die Konfigurationsdateien festgelegt werden, indem sie die relevanten Eigenschaften festlegen oder diese Informationen an den SmtpClient(String, Int32) Konstruktor übergeben.
Sie können diese Methode nicht aufrufen, wenn asynchron eine Nachricht gesendet wird.
Wenn der SMTP-Host Anmeldeinformationen benötigt, müssen Sie diese festlegen, bevor Sie diese Methode aufrufen. Verwenden Sie zum Angeben von Anmeldeinformationen die UseDefaultCredentials Eigenschaften oder Credentials Eigenschaften.
Wenn Sie eine SmtpException Ausnahme erhalten, überprüfen Sie die StatusCode Eigenschaft, um den Grund zu ermitteln, warum der Vorgang fehlgeschlagen ist. Dies SmtpException kann auch eine innere Ausnahme enthalten, die angibt, warum der Vorgang fehlgeschlagen ist.
Beim Senden von E-Mails an Send mehrere Empfänger und der SMTP-Server akzeptiert einige Empfänger als gültig und lehnt andere ab, Send sendet E-Mails an die akzeptierten Empfänger und wird dann SmtpFailedRecipientsException ausgelöst (oder wenn SmtpFailedRecipientException nur ein Empfänger abgelehnt wird). A SmtpFailedRecipientsException enthält eine Liste der Empfänger, die abgelehnt wurden.
Hinweis
Wenn die EnableSsl Eigenschaft auf true, und der SMTP-E-Mail-Server in der Antwort auf den EHLO-Befehl nicht ankündigen, löst ein Aufruf der Send Methoden SendAsync einen SmtpException.
Gilt für:
Send(String, String, String, String)
- Quelle:
- SmtpClient.cs
- Quelle:
- SmtpClient.cs
- Quelle:
- SmtpClient.cs
- Quelle:
- SmtpClient.cs
- Quelle:
- SmtpClient.cs
Sendet die angegebene E-Mail-Nachricht zur Zustellung an einen SMTP-Server. Der Nachrichtensender, Empfänger, Betreff und Nachrichtentext werden mithilfe von String Objekten angegeben.
public:
void Send(System::String ^ from, System::String ^ recipients, System::String ^ subject, System::String ^ body);
public void Send(string from, string recipients, string? subject, string? body);
public void Send(string from, string recipients, string subject, string body);
member this.Send : string * string * string * string -> unit
Public Sub Send (from As String, recipients As String, subject As String, body As String)
Parameter
Ausnahmen
Dies SmtpClient hat bereits einen weiteren Sendevorgang ausgeführt.
- oder -
DeliveryMethod-Eigenschaft ist auf Network und Host ist .null
- oder -
DeliveryMethod die Eigenschaft auf die leere Zeichenfolge ("") festgelegt Network ist und Host gleich der leeren Zeichenfolge ist.
- oder -
DeliveryMethod eigenschaft wird auf Network null Port , eine negative Zahl oder größer als 65.535 festgelegt.
Dieses Objekt wurde verworfen.
Fehler bei der Verbindung mit dem SMTP-Server.
- oder -
Fehler bei der Authentifizierung:
- oder -
Beim Vorgang ist ein Timeout aufgetreten.
- oder -
EnableSsl ist auf true die Eigenschaft festgelegt, die Eigenschaft ist jedoch DeliveryMethod auf SpecifiedPickupDirectory oder PickupDirectoryFromIisfestgelegt.
- oder -
EnableSsl ist auf "StartTLS" festgelegt true, , aber der SMTP-E-Mail-Server hat nicht als Antwort auf den EHLO-Befehl angekündigt.
Hinweise
Diese Methode blockiert, während die E-Mail übertragen wird. Sie können einen Timeoutwert mithilfe der Timeout Eigenschaft angeben, um sicherzustellen, dass die Methode nach einer bestimmten Zeitspanne zurückgegeben wird.
Vor dem Aufrufen dieser Methode müssen die und Port die Host Eigenschaften entweder über die Konfigurationsdateien festgelegt werden, indem sie die relevanten Eigenschaften festlegen oder diese Informationen an den SmtpClient(String, Int32) Konstruktor übergeben.
Sie können diese Methode nicht aufrufen, wenn asynchron eine Nachricht gesendet wird.
Wenn der SMTP-Host Anmeldeinformationen benötigt, müssen Sie diese festlegen, bevor Sie diese Methode aufrufen. Verwenden Sie zum Angeben von Anmeldeinformationen die UseDefaultCredentials Eigenschaften oder Credentials Eigenschaften.
Wenn Sie eine SmtpException Ausnahme erhalten, überprüfen Sie die StatusCode Eigenschaft, um den Grund zu ermitteln, warum der Vorgang fehlgeschlagen ist. Dies SmtpException kann auch eine innere Ausnahme enthalten, die angibt, warum der Vorgang fehlgeschlagen ist.
Beim Senden von E-Mails an Send mehrere Empfänger und der SMTP-Server akzeptiert einige Empfänger als gültig und lehnt andere ab, Send sendet E-Mails an die akzeptierten Empfänger und wird dann SmtpFailedRecipientsException ausgelöst (oder wenn SmtpFailedRecipientException nur ein Empfänger abgelehnt wird). A SmtpFailedRecipientsException enthält eine Liste der Empfänger, die abgelehnt wurden.
Hinweis
Wenn die EnableSsl Eigenschaft auf true, und der SMTP-E-Mail-Server in der Antwort auf den EHLO-Befehl nicht ankündigen, löst ein Aufruf der Send Methoden SendAsync einen SmtpException.