-
c#编程方式执行包的任务
using<Atitle=systemhref="http://www.alimama.com/membersvc/buyadzone/buy_ad_zone.htm?adzoneid=892989"target=_blank>system</A>;
using<Atitle=systemhref="http://www.alimama.com/membersvc/buyadzone/buy_ad_zone.htm?adzoneid=892989"target=_blank>system</A>.Collections.Generic;
using<Atitle=systemhref="http://www.alimama.com/membersvc/buyadzone/buy_ad_zone.htm?adzoneid=892989"target=_blank>system</A>.ComponentModel;
using<Atitle=systemhref="http://www.alimama.com/membersvc/buyadzone/buy_ad_zone.htm?adzoneid=892989"target=_blank>system</A>.Data;
using<Atitle=systemhref="http://www.alimama.com/membersvc/buyadzone/buy_ad_zone.htm?adzoneid=892989"target=_blank>system</A>.Drawing;
using<Atitle=systemhref="http://www.alimama.com/membersvc/buyadzone/buy_ad_zone.htm?adzoneid=892989"target=_blank>system</A>.Text;
using<Atitle=systemhref="http://www.alimama.com/membersvc/buyadzone/buy_ad_zone.htm?adzoneid=892989"target=_blank>system</A>.Windows.Forms;
//由于此命名空间有些成员跟其它命名空间有些冲突,因此替换一下
usingdts=Microsoft.SqlServer.Dts.Runtime;
namespaceWinSSIS
{
publicpartialclassForm1:Form
{
publicForm1()
{
InitializeComponent();
}
privatevoidbutton1_Click(objectsender,EventArgse)
{
if(this.openFileDialog1.ShowDialog().Equals(DialogResult.OK))
{
this.textBox1.Text=this.openFileDialog1.FileName;
Executepackage(this.openFileDialog1.FileName);
}
}
privatevoidExecutepackage(stringpath)
{
stringmessage=null;
//创建一个DTS执行用应程序
dts.Applicationapp=new<Atitle=microsofthref="http://www.bloggao.com/reg17994.aspx"target=_blank>microsoft</A>.SqlServer.Dts.Runtime.Application();
//新建一个包
dts.Packagepackage=new<Atitle=microsofthref="http://www.bloggao.com/reg17994.aspx"target=_blank>microsoft</A>.SqlServer.Dts.Runtime.Package();
//加载一个包
package=app.LoadPackage(path,null);
//给包变量赋值
if(package.Variables.Contains("filePath"))
{
package.Variables["filePath"].Value=@"d:SSIS包路径测试.txt";
}
//执行包
dts.DTSExecResultresult=package.Execute();
//获取包的执行信息
if(result.Equals(dts.DTSExecResult.Failure))
{
for(inti=0;i<package.Errors.Count;i++)
{
message+=package.Errors[i].Description;
}
}
if(result.Equals(dts.DTSExecResult.Success))
{
message="包执行成功成!";
}
else
{
message="其它1";
}
MessageBox.Show(message);
}
}
}