0
我正在使用SSIS 2008r2中的脚本任务发送电子邮件给收件人的代码。当所有的地址框都被填充时(To,Cc和Bcc),它可以正常工作,但是当其中一个框为空/空时,出现错误。我想要有这个选项来让这些盒子为空。这里是我工作的代码:可通过SSIS发送电子邮件中的可空CC和BCC
Public Sub SendMailMessage(_
ByVal From As String, ByVal SendTo As String, _
ByVal SendCc As String, ByVal SendBcc As String, _
ByVal Subject As String, ByVal Body As String, _
ByVal Attachment As String, ByVal IsBodyHtml As Boolean, ByVal Server As String)
Dim htmlMessage As MailMessage
Dim mySmtpClient As SmtpClient
Dim myAttachment As Attachment
Dim myBcc As MailAddress = New MailAddress(SendBcc)
Dim myCc As MailAddress = New MailAddress(SendCc)
htmlMessage = New MailMessage(_
From, SendTo, Subject, Body)
myAttachment = New Attachment(Attachment)
htmlMessage.IsBodyHtml = IsBodyHtml
htmlMessage.Attachments.Add(myAttachment)
htmlMessage.CC.Add(myCc)
htmlMessage.Bcc.Add(myBcc)
mySmtpClient = New SmtpClient(Server)
mySmtpClient.Credentials = CredentialCache.DefaultNetworkCredentials
mySmtpClient.Send(htmlMessage)
End Sub
Public Sub Main()
Dim htmlMessageTo As String = _
Replace(Dts.Variables("HtmlEmailTo").Value.ToString, ";", ",")
Dim htmlMessageCC As String = _
Replace(Dts.Variables("HtmlEmailCc").Value.ToString, ";", ",")
Dim htmlMessageBCC As String = _
Replace(Dts.Variables("HtmlEmailBcc").Value.ToString, ";", ",")
Dim htmlMessageFrom As String = _
Dts.Variables("HtmlEmailFrom").Value.ToString
Dim htmlMessageSubject As String = _
Dts.Variables("HtmlEmailSubject").Value.ToString
Dim htmlMessageBody As String = _
Dts.Variables("HtmlEmailBody").Value.ToString
Dim MailBody As String = File.ReadAllText(htmlMessageBody)
Dim htmlAttachments As String = _
Dts.Variables("HtmlEmailAttachment").Value.ToString
Dim smtpServer As String = _
Dts.Variables("HtmlEmailServer").Value.ToString
SendMailMessage(_
htmlMessageFrom, htmlMessageTo, htmlMessageCC, _
htmlMessageBCC, htmlMessageSubject, MailBody, htmlAttachments, _
True, smtpServer)
Dts.TaskResult = ScriptResults.Success
End Sub
请编辑您的问题以包含错误消息的确切文本。 –