2011-03-05 10 views
7

Bir Windows uygulamasında gmail kullanıcı adı ve parola kullanarak e-posta göndermeye çalışıyorum. Ancak, StringBuilder örneğimde birden fazla e-posta adresi topladığımda, aşağıdaki kod yalnızca ilk e-posta adresine posta gönderiyor.Birden çok adresli e-postalar nasıl gönderilir? C#

var fromAddress = new MailAddress(username, DefaultSender); 
var toAddress = new MailAddress(builder.ToString());//builder reference having multiple email address 

string subject = txtSubject.Text; 
string body = txtBody.Text; ; 
var smtp = new SmtpClient 
{ 
    Host = HostName, 
    Port = 587, 
    EnableSsl = true, 
    DeliveryMethod = SmtpDeliveryMethod.Network, 
    UseDefaultCredentials = false, 
    Credentials = new NetworkCredential(username, password), 
    //Timeout = 1000000 

}; 
var message = new MailMessage(fromAddress, toAddress) 
{ 
    Subject = subject, 
    Body = body, 
    IsBodyHtml = chkHtmlBody.Checked 

}; 

if (System.IO.File.Exists(txtAttechments.Text)) 
{ 
    System.Net.Mail.Attachment attechment = new Attachment(txtAttechments.Text); 
    message.Attachments.Add(attechment); 
} 

if(this.Enabled) 
    this.Enabled = false; 

smtp.Send(message); 

Neyi yanlış yapıyorum ve sorunumu nasıl çözebilirim?

+0

Does çalışmaz

message.To.Add(new MailAddress("[email protected], [email protected]")); 

bu kullanırsanız bu bir .net 3.5

çalışabilir aslında

message.To.Add("[email protected], [email protected]"); 

olduğunu Oluşturucu "," veya ";" ile sınırlamak? – CarneyCode

+0

",": "email1 @ gmail.com, email2 @ gmail.com" ile sınırlandırılan e-posta adresine sahip oluşturucu örneği – Joe

cevap

4

En iyi bahis,MailAddress es öğelerinizin her birisidir. .Net'in önceki sürümlerinin, daha yeni çalışma zamanı sürümlerinden ayrı virgül veya noktalı virgülle ayrılmış e-posta adreslerini ayrıştırmaktan daha mutlu olduğunu düşünüyorum.

+0

message.To.Add (builder.ToString()) kodu çalışıyor. Teşekkürler! – Joe

0

Aynı problemi yaşıyordum.

kodu .net 3.5

İlgili konular