【发布时间】:2017-03-10 16:13:15
【问题描述】:
使用 SSDT for Visual Studio 2013 使用 SmtpClient 类通过 ssis 脚本发送电子邮件通知。
public void Main()
{
SmtpClient v_EmailClient;
string v_From = Dts.Variables["User::vFrom"].Value.ToString();
string v_To = Dts.Variables["User::vTo"].Value.ToString();
string v_EnvNameToSubject = Dts.Variables["User::vEnvNameToSubject"].Value.ToString();
MailMessage v_EmailMessage = new MailMessage(v_From, v_To);
v_EmailMessage.IsBodyHtml = true;
v_EmailMessage.Subject = v_EnvNameToSubject + "SSIS email notification";
//Concatenation of variable with the standard message does not work
v_EmailMessage.Body = "Message text";
v_EmailClient = new SmtpClient("SmtpServer");
v_EmailClient.UseDefaultCredentials = true;
v_EmailClient.Send(v_EmailMessage);
Dts.TaskResult = (int)ScriptResults.Success;
}
当我尝试将变量 v_EnvNameToSubject 与标准主题文本连接时不起作用。我尝试使用 try catch 块来找出实际的错误消息,但这也无济于事。
【问题讨论】:
-
返回什么类型的错误?是否仅在您的主题中插入:“SSIS 电子邮件通知”?在您的示例中,变量 vEnvNameToSubject 被取消...
-
我得到了非常通用的 DTS 脚本任务:弹出运行时错误。我尝试使用 try catch 块,即使这样也无济于事。所以,我不确定到底是什么让它失败了。
-
这种不尊重 try catch 的一般错误通常意味着您拼错了变量或未正确引用第三方工具。尝试注释掉 dts.variable.... 行,看看你是否克服了那个错误。
-
是编译失败还是运行失败?如果它编译并尝试运行,请尝试按照本指南查找您遇到的错误的确切来源。 msdn.microsoft.com/en-us/library/ms136131.aspx
-
@Ben 它在运行时编译得很好我有这个错误。