SmtpClient.Send Methode
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Hiermee wordt een e-mailbericht verzonden naar een SMTP-server voor levering. Deze methoden blokkeren terwijl het bericht wordt verzonden.
Overloads
| Name | Description |
|---|---|
| Send(MailMessage) |
Hiermee wordt het opgegeven bericht verzonden naar een SMTP-server voor levering. |
| Send(String, String, String, String) |
Hiermee wordt het opgegeven e-mailbericht verzonden naar een SMTP-server voor levering. De afzender van het bericht, de geadresseerden, het onderwerp en de hoofdtekst van het bericht worden opgegeven met behulp van String objecten. |
Send(MailMessage)
Hiermee wordt het opgegeven bericht verzonden naar een SMTP-server voor levering.
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)
Parameters
- message
- MailMessage
Een MailMessage met het te verzenden bericht.
Uitzonderingen
message is null.
Dit SmtpClient heeft een andere verzendbewerking die al wordt uitgevoerd.
– of –
From is null.
– of –
Er zijn geen geadresseerden opgegeven in To, CCen Bcc eigenschappen.
– of –
DeliveryMethod eigenschap is ingesteld op Network en Host is null.
– of –
DeliveryMethod de eigenschap is ingesteld op Network en Host is gelijk aan de lege tekenreeks ("").
– of –
DeliveryMethod eigenschap is ingesteld op Network en Port is nul, een negatief getal of groter dan 65.535.
Dit object is verwijderd.
De verbinding met de SMTP-server is mislukt.
– of –
Verificatie is mislukt.
– of –
Er is een time-out van de bewerking.
– of –
EnableSsl is ingesteld op true , maar de DeliveryMethod eigenschap is ingesteld op SpecifiedPickupDirectory of PickupDirectoryFromIis.
– of –
EnableSsl is ingesteld op true, maar de SMTP-e-mailserver heeft STARTTLS niet aangekondigd in het antwoord op de EHLO-opdracht.
Voorbeelden
In het volgende codevoorbeeld ziet u hoe u deze methode gebruikt.
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());
}
}
Opmerkingen
Deze methode blokkeert terwijl het e-mailbericht wordt verzonden. U kunt een time-outwaarde opgeven met behulp van de Timeout eigenschap om ervoor te zorgen dat de methode wordt geretourneerd nadat een opgegeven hoeveelheid tijd is verstreken.
Voordat u deze methode aanroept, moeten de Host en Port eigenschappen worden ingesteld via de configuratiebestanden door de relevante eigenschappen in te stellen of door deze informatie door te geven aan de SmtpClient(String, Int32) constructor.
U kunt deze methode niet aanroepen als er asynchroon een bericht wordt verzonden.
Als de SMTP-host referenties vereist, moet u deze instellen voordat u deze methode aanroept. Als u referenties wilt opgeven, gebruikt u de UseDefaultCredentials of Credentials eigenschappen.
Als u een SmtpException uitzondering ontvangt, controleert u de StatusCode eigenschap om te achterhalen waarom de bewerking is mislukt. De SmtpException kan ook een interne uitzondering bevatten die aangeeft waarom de bewerking is mislukt.
Wanneer u e-mail verzendt met Send meerdere geadresseerden en de SMTP-server sommige geadresseerden accepteert als geldig en anderen weigert, Send verzendt u e-mail naar de geaccepteerde geadresseerden en wordt er een SmtpFailedRecipientsException gegenereerd (of een SmtpFailedRecipientException als slechts één geadresseerde wordt geweigerd). A SmtpFailedRecipientsException bevat een lijst met de geadresseerden die zijn geweigerd.
Note
Als de EnableSsl eigenschap is ingesteld op true, en de SMTP-e-mailserver geen STARTTLS adverteren in het antwoord op de EHLO-opdracht, genereert een aanroep naar de Send of SendAsync methoden een SmtpException.
Van toepassing op
Send(String, String, String, String)
Hiermee wordt het opgegeven e-mailbericht verzonden naar een SMTP-server voor levering. De afzender van het bericht, de geadresseerden, het onderwerp en de hoofdtekst van het bericht worden opgegeven met behulp van String objecten.
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);
member this.Send : string * string * string * string -> unit
Public Sub Send (from As String, recipients As String, subject As String, body As String)
Parameters
Uitzonderingen
Dit SmtpClient heeft een andere verzendbewerking die al wordt uitgevoerd.
– of –
DeliveryMethod eigenschap is ingesteld op Network en Host is null.
– of –
DeliveryMethod de eigenschap is ingesteld op Network en Host is gelijk aan de lege tekenreeks ("").
– of –
DeliveryMethod eigenschap is ingesteld op Network en Port is nul, een negatief getal of groter dan 65.535.
Dit object is verwijderd.
De verbinding met de SMTP-server is mislukt.
– of –
Verificatie is mislukt.
– of –
Er is een time-out van de bewerking.
– of –
EnableSsl is ingesteld op true , maar de DeliveryMethod eigenschap is ingesteld op SpecifiedPickupDirectory of PickupDirectoryFromIis.
– of –
EnableSsl is ingesteld op true, maar de SMTP-e-mailserver heeft STARTTLS niet aangekondigd in het antwoord op de EHLO-opdracht.
Opmerkingen
Deze methode blokkeert terwijl het e-mailbericht wordt verzonden. U kunt een time-outwaarde opgeven met behulp van de Timeout eigenschap om ervoor te zorgen dat de methode wordt geretourneerd nadat een opgegeven hoeveelheid tijd is verstreken.
Voordat u deze methode aanroept, moeten de Host en Port eigenschappen worden ingesteld via de configuratiebestanden door de relevante eigenschappen in te stellen of door deze informatie door te geven aan de SmtpClient(String, Int32) constructor.
U kunt deze methode niet aanroepen als er asynchroon een bericht wordt verzonden.
Als de SMTP-host referenties vereist, moet u deze instellen voordat u deze methode aanroept. Als u referenties wilt opgeven, gebruikt u de UseDefaultCredentials of Credentials eigenschappen.
Als u een SmtpException uitzondering ontvangt, controleert u de StatusCode eigenschap om te achterhalen waarom de bewerking is mislukt. De SmtpException kan ook een interne uitzondering bevatten die aangeeft waarom de bewerking is mislukt.
Wanneer u e-mail verzendt met Send meerdere geadresseerden en de SMTP-server sommige geadresseerden accepteert als geldig en anderen weigert, Send verzendt u e-mail naar de geaccepteerde geadresseerden en wordt er een SmtpFailedRecipientsException gegenereerd (of een SmtpFailedRecipientException als slechts één geadresseerde wordt geweigerd). A SmtpFailedRecipientsException bevat een lijst met de geadresseerden die zijn geweigerd.
Note
Als de EnableSsl eigenschap is ingesteld op true, en de SMTP-e-mailserver geen STARTTLS adverteren in het antwoord op de EHLO-opdracht, genereert een aanroep naar de Send of SendAsync methoden een SmtpException.