C# 操作dtsx包

来源:互联网 发布:java class源码 编辑:程序博客网 时间:2024/06/03 17:50

 今天决定以后多发原创文章了,把前段时间学过的C#操作dtsx包放上来,算是开个头。

这篇文章不是使用bi开发dtsx包,而是用C#代码调用现有的dtsx包。

偶也是新手,错误在所难免,希望大家批评指正,共同学习,共同进步。

环境:VS2005 C#项目

首先要引入组件--Microsoft.SqlServer.ManagedDTS

 

在CS代码里加入下面这句代码

using Microsoft.SqlServer.Dts.Runtime;//(这个命名空间下的package类包括一些包的状态属性,像starttime和stoptime等)

 

下面代码打开存在的dtsx包,并执行。

            Microsoft.SqlServer.Dts.Runtime.Application app = new Microsoft.SqlServer.Dts.Runtime.Application();
            Package MyPackage = new Package();
            MyPackage = app.LoadPackage(@"D:/mytest.dtsx", null);//这个方法,不同命名空间下参数个数也不同,请注意,这里是引用上面那个空间后,声明一个app类,然后把要操作的包加载进来。
            Microsoft .SqlServer .Dts .Runtime .DTSExecResult ResultStatus= MyPackage.Execute();//这个执行方法返回的是一个执行状态。
            DateTime Pstarttime = MyPackage.StartTime;
            DateTime Pstoptime = MyPackage.StopTime;

             if (ResultStatus.Equals(Microsoft.SqlServer.Dts.Runtime.DTSExecResult.Success))
            {
                MessageBox.Show("成功");           

            }
            else
            {
                MessageBox.Show("失败");
            }

 

今天就写到这里吧。第一次写原创,用掉了我不少时间。跟以前转贴的最大区别就是责任感明显不一样,现在就是要确保写的东西没有错误。但愿如此吧。:)

在包执行出错的时候你可以进行你想要的操作,比如,打开日志(这里首先确保操作的这个包在设计的时候,已经绑定日志文件了,其他资料也有执行时绑定的,偶没有完全掌握。偶最近在做一个自定义日志提供程序,还没有做完全。)让用户看看,或是一些自定义的操作。

原创粉丝点击