2010-07-30 120 views
0

我使用MailMessage類,然後發送郵件給許多收件人。我的代碼在這裏。Asp.net電子郵件接收問題

MailMessage msg = new MailMessage(); 

SmtpClient client = new SmtpClient("smtp.mysite.com"); 
client.EnableSsl = false; 
client.UseDefaultCredentials = false; 
client.Credentials = new NetworkCredential("[email protected]", "mypassword"); 
forea(User u in users) 
{ 
    msg.To.Add(u.Email); 
} 

client.Send(msg); 

這項工作成功。

但問題是在收件人計算機上顯示的所有電子郵件地址爲TO: user1.fds.com;email2.fdsa.com;email3.fdsa.com;...

我只需要顯示當前用戶的電子郵件。怎麼做?

也許我會做這樣的

forea(User u in users) 
{ 
    msg.To.Clear(); 
    msg.To.Add(u.Email); 
    client.Send(msg); 
} 

但它過於緩慢。

回答

3

一個選項是使用MailMessage.Bcc而不是To。這當然不會在「To」行顯示收件人,但通常這不是問題。

我希望「多收件人」真心希望此郵件...

2

我建議你遍歷收件人列表和發送的電子郵件一次一個。

使用密件抄送可能會導致郵件被歸類爲垃圾郵件。

+2

+1而且會很好: users.ConvertAll(u => new MailMessage(u.Email))。ForEach(client.Send) – onof 2010-07-30 07:11:54