SQL Server 2012 SSIS脚本用于将邮件从Gamil发送到Gmail的任务,显示“DTS脚本:运行时错误”

时间:2015-11-11 02:56:52

标签: sql-server email ssis ssis-2012 script-task

我正在使用SSIS 12,SQL Server 2012,Visual Studio 2012和.net 4。

我的SSIS脚本任务代码(用于发送邮件):

// Introduction to the script task
/* The Script Task allows you to perform virtually any operation that can be accomplished in
 * a .Net application within the context of an Integration Services control flow. 
 * 
 * Expand the other regions which have "Help" prefixes for examples of specific ways to use
 * Integration Services features within this script task. */

using System;
using System.Data;
using Microsoft.SqlServer.Dts.Runtime;
using System.Windows.Forms;
using System.Net;
using System.Net.Mail;

namespace ST_20fdf0b00e2949fda158e6680c127473
{
        public void Main()
        {
            SmtpClient smtp = new SmtpClient("smtp.gmail.com", 587);
            smtp.EnableSsl = true;
            smtp.UseDefaultCredentials = false;
            smtp.Credentials = new NetworkCredential("raihanuahmed@gmail.com", "password");

            MailMessage msg = new MailMessage();
            msg.From = new MailAddress("raihanuahmed@gmail.com");
            msg.To.Add(new MailAddress("raihan.csse.aiub@gmail.com"));
            msg.Subject = "AW2012 ETL Process Complite";
            msg.Body = string.Format("{0} records loaded into DimProduct", 0);

            smtp.Send(msg);

            Dts.TaskResult = (int)ScriptResults.Success;
        }

        enum ScriptResults
        {
            Success = Microsoft.SqlServer.Dts.Runtime.DTSExecResult.Success,
            Failure = Microsoft.SqlServer.Dts.Runtime.DTSExecResult.Failure
        };
    }
} 

执行此电子邮件发送脚本后,我总是

  

“DTS脚本:运行时错误”

     

at System.RuntimeMethodHandle.InvokeMethod(Object target,Object []   参数,签名sig,布尔构造函数)
  在System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(Object obj,   Object []参数,Object []参数)
  在System.Reflection.RuntimeMethodInfo.Invoke(Object obj,BindingFlags   invokeAttr,Binder binder,Object []参数,CultureInfo文化)
  在System.RuntimeType.InvokeMember(String name,BindingFlags   bindingFlags,Binder binder,Object target,Object [] providedArgs,   ParameterModifier []修饰符,CultureInfo文化,String []   namedParams)
  在Microsoft.SqlServer.Dts.Tasks.ScriptTask.VSTATaskScriptingEngine.ExecuteScript()

我已将问题上传到Youtube,这里是链接:

DTS Script :Runtime Error

以下是我在Dropbox中的项目链接:

EmailScript

1 个答案:

答案 0 :(得分:2)

我找到了解决方案:)很多非常感谢Mr.Nick.McDermaid ......  解决方案是:

更改安全性较低的应用https://support.google.com/accounts/answer/6010255

的帐户访问权限