2010-09-29 141 views
4

我有一个sendmail功能,适用于一个收件人。如果我在ToEmail中传递类似“[email protected]; [email protected]”的内容,那么我会收到一个错误消息:邮件标题中不允许。我究竟做错了什么?如何使用asp.net将电子邮件发送给多个收件人?

这里是我的SendMail功能:

Public Function SendMail(ByVal ToEmail As String, ByVal FromEmail As String, ByVal Subject As String, ByVal Body As String, Optional ByVal bccEmail As String = "", Optional ByVal bIsHTML As Boolean = False) As Boolean 
    Try 
     Dim msgMail As New MailMessage(FromEmail, ToEmail, Subject, Body) 
     msgMail.IsBodyHtml = bIsHTML 
     If bccEmail <> "" Then 
      msgMail.Bcc.Add(bccEmail) 
     End If 
     Dim smtp As New SmtpClient 
      smtp.Host = "myServer" 

     smtp.Send(msgMail) 
     SendMail = True 
    Catch ex As Exception 
     DoTrace(ex.Source, ex.Message) 
     SendMail = False 
    End Try 
End Function 

回答

6

的地址需要用逗号,没有分号来分隔。

+0

+1希望我已经发布这个答案,然后再检查:)。 – GenericTypeTea 2010-09-29 13:59:45

+0

工作完美,谢谢! – user372234 2010-09-29 17:25:47

0

改变你的toEmail从字符串到MailAddressCollection,和你做

5

您需要使用To属性MailAddressCollection,并调用Add()方法分别添加电子邮件地址。

如果您将电子邮件地址作为分号分隔列表传递到函数中,那么只需对它们执行String.Split(),然后将它们添加到迭代循环中的To属性中。

相关问题