SmtpClient.Send Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Teslim için smtp sunucusuna bir e-posta iletisi gönderir. bu yöntemler ileti iletilirken engeller.
Aşırı Yüklemeler
| Name | Description |
|---|---|
| Send(MailMessage) |
Belirtilen iletiyi teslim için bir SMTP sunucusuna gönderir. |
| Send(String, String, String, String) |
Belirtilen e-posta iletisini teslim için bir SMTP sunucusuna gönderir. İletiyi gönderen, alıcılar, konu ve ileti gövdesi nesneler kullanılarak String belirtilir. |
Send(MailMessage)
- Kaynak:
- SmtpClient.cs
- Kaynak:
- SmtpClient.cs
- Kaynak:
- SmtpClient.cs
- Kaynak:
- SmtpClient.cs
- Kaynak:
- SmtpClient.cs
Belirtilen iletiyi teslim için bir SMTP sunucusuna gönderir.
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)
Parametreler
- message
- MailMessage
MailMessage Gönderilecek iletiyi içeren bir.
Özel durumlar
message, null'e eşittir.
Bu SmtpClient işlem devam eden başka bir gönderme işlemine sahip.
-veya-
From, null'e eşittir.
-veya-
, CCve Bcc özelliklerinde Tobelirtilen alıcı yok.
-veya-
DeliveryMethod özelliği olarak Network ayarlanır ve Host şeklindedir null.
-veya-
DeliveryMethod özelliği olarak Network ayarlanır ve Host boş dizeye ("") eşittir.
-veya-
DeliveryMethod özelliği sıfır, negatif bir sayı veya 65.535'ten büyük olarak ayarlanır NetworkPort .
Bu nesne atılmış.
SMTP sunucusuna bağlantı başarısız oldu.
-veya-
Kimlik doğrulaması başarısız oldu.
-veya-
İşlem zaman aşımına uğradı.
-veya-
EnableSslolarak ayarlanırtrue, ancak DeliveryMethod özelliği veya PickupDirectoryFromIisolarak SpecifiedPickupDirectory ayarlanır.
-veya-
EnableSsl olarak ayarlanır true, ancak SMTP posta sunucusu, EHLO komutuna yanıt olarak STARTTLS'yi tanıtmadı.
Örnekler
Aşağıdaki kod örneği bu yöntemin kullanılmasını gösterir.
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());
}
}
Açıklamalar
Bu yöntem, e-posta iletilirken engeller. Yöntemin belirtilen süre geçtikten Timeout sonra döndürdüğünden emin olmak için özelliğini kullanarak bir zaman aşımı değeri belirtebilirsiniz.
Bu yöntemi çağırmadan önce ve Port özellikleri, Host yapılandırma dosyaları aracılığıyla ilgili özellikleri ayarlayarak veya bu bilgileri oluşturucuya SmtpClient(String, Int32) geçirerek ayarlanmalıdır.
Zaman uyumsuz olarak gönderilen bir ileti varsa bu yöntemi çağıramazsınız.
SMTP konağı kimlik bilgileri gerektiriyorsa, bu yöntemi çağırmadan önce bunları ayarlamanız gerekir. Kimlik bilgilerini belirtmek için veya Credentials özelliklerini kullanınUseDefaultCredentials.
Bir SmtpException özel durum alırsanız, işlemin başarısız olmasının nedenini bulmak için özelliğini denetleyin StatusCode . ayrıca SmtpException , işlemin başarısız olmasının nedenini gösteren bir iç özel durum da içerebilir.
Kullanarak birden çok alıcıya e-posta Send gönderirken VE SMTP sunucusu bazı alıcıları geçerli olarak kabul eder ve diğerlerini reddeder, Send kabul edilen alıcılara e-posta gönderir ve sonra bir SmtpFailedRecipientsException oluşturulur (veya yalnızca bir SmtpFailedRecipientException alıcı reddedilirse). , SmtpFailedRecipientsException reddedilen alıcıların listesini içerir.
Uyarı
EnableSsl özelliği olarak trueayarlanırsa ve SMTP posta sunucusu EHLO komutuna yanıt olarak STARTTLS'yi tanıtmazsa, veya SendAsync yöntemlerine Send yönelik bir çağrı oluştururSmtpException.
Şunlara uygulanır
Send(String, String, String, String)
- Kaynak:
- SmtpClient.cs
- Kaynak:
- SmtpClient.cs
- Kaynak:
- SmtpClient.cs
- Kaynak:
- SmtpClient.cs
- Kaynak:
- SmtpClient.cs
Belirtilen e-posta iletisini teslim için bir SMTP sunucusuna gönderir. İletiyi gönderen, alıcılar, konu ve ileti gövdesi nesneler kullanılarak String belirtilir.
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)
Parametreler
Özel durumlar
Bu SmtpClient işlem devam eden başka bir gönderme işlemine sahip.
-veya-
DeliveryMethod özelliği olarak Network ayarlanır ve Host şeklindedir null.
-veya-
DeliveryMethod özelliği olarak Network ayarlanır ve Host boş dizeye ("") eşittir.
-veya-
DeliveryMethod özelliği sıfır, negatif bir sayı veya 65.535'ten büyük olarak ayarlanır NetworkPort .
Bu nesne atılmış.
SMTP sunucusuna bağlantı başarısız oldu.
-veya-
Kimlik doğrulaması başarısız oldu.
-veya-
İşlem zaman aşımına uğradı.
-veya-
EnableSslolarak ayarlanırtrue, ancak DeliveryMethod özelliği veya PickupDirectoryFromIisolarak SpecifiedPickupDirectory ayarlanır.
-veya-
EnableSsl olarak ayarlanır true, ancak SMTP posta sunucusu, EHLO komutuna yanıt olarak STARTTLS'yi tanıtmadı.
Açıklamalar
Bu yöntem, e-posta iletilirken engeller. Yöntemin belirtilen süre geçtikten Timeout sonra döndürdüğünden emin olmak için özelliğini kullanarak bir zaman aşımı değeri belirtebilirsiniz.
Bu yöntemi çağırmadan önce ve Port özellikleri, Host yapılandırma dosyaları aracılığıyla ilgili özellikleri ayarlayarak veya bu bilgileri oluşturucuya SmtpClient(String, Int32) geçirerek ayarlanmalıdır.
Zaman uyumsuz olarak gönderilen bir ileti varsa bu yöntemi çağıramazsınız.
SMTP konağı kimlik bilgileri gerektiriyorsa, bu yöntemi çağırmadan önce bunları ayarlamanız gerekir. Kimlik bilgilerini belirtmek için veya Credentials özelliklerini kullanınUseDefaultCredentials.
Bir SmtpException özel durum alırsanız, işlemin başarısız olmasının nedenini bulmak için özelliğini denetleyin StatusCode . ayrıca SmtpException , işlemin başarısız olmasının nedenini gösteren bir iç özel durum da içerebilir.
Kullanarak birden çok alıcıya e-posta Send gönderirken VE SMTP sunucusu bazı alıcıları geçerli olarak kabul eder ve diğerlerini reddeder, Send kabul edilen alıcılara e-posta gönderir ve sonra bir SmtpFailedRecipientsException oluşturulur (veya yalnızca bir SmtpFailedRecipientException alıcı reddedilirse). , SmtpFailedRecipientsException reddedilen alıcıların listesini içerir.
Uyarı
EnableSsl özelliği olarak trueayarlanırsa ve SMTP posta sunucusu EHLO komutuna yanıt olarak STARTTLS'yi tanıtmazsa, veya SendAsync yöntemlerine Send yönelik bir çağrı oluştururSmtpException.