Ssis 试图捕获用户变量“中的错误消息”;用户::ErrorMsg";并在事件处理程序邮件任务中添加变量

Ssis 试图捕获用户变量“中的错误消息”;用户::ErrorMsg";并在事件处理程序邮件任务中添加变量,ssis,Ssis,我在Eventhandler邮件任务中使用此用户变量“user::ErrorMsg” 但该值始终为空 catch (Exception ExMsg) { string ErrorMsg = null; ErrorMsg = ExMsg.GetType().FullName + "<br>" + ExMsg.Message + "<br>" + ExMsg.StackTrac

我在Eventhandler邮件任务中使用此用户变量“user::ErrorMsg”

但该值始终为空

   catch (Exception ExMsg)
        {
            string ErrorMsg = null;
            ErrorMsg = ExMsg.GetType().FullName + "<br>" +
               ExMsg.Message + "<br>" + ExMsg.StackTrace;

            Dts.Variables["User::ErrorMsg"].Value = ErrorMsg.ToString();

            throw;

        }
catch(异常ExMsg)
{
字符串ErrorMsg=null;
ErrorMsg=ExMsg.GetType().FullName+“
”+ ExMsg.Message+“
”+ExMsg.StackTrace; Dts.Variables[“User::ErrorMsg”].Value=ErrorMsg.ToString(); 投掷; }
而不是
抛出
捕获
块的末尾,使用:

Dts.TaskResult = (int)DTSExecResult.Failure;
同样,当脚本完成且没有错误时,请使用:

Dts.TaskResult = (int)DTSExecResult.Success;

不是抛出错误,而是从脚本任务返回成功。