程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> 關於C語言 >> 在C#中應用DTS

在C#中應用DTS

編輯:關於C語言
在C#中應用DTS



本文將關注列出、執行DTS包和改變DTS包的屬性或者全局變量。



首先我們看看如何列出保存在本地(local or (local)\NetSDK)服務器為本地包。在DOTNET中處理DTS包的關鍵是增加對“Microsoft DTSPackage Object Library”的引用(dts.dll)。



以下代碼可以列出服務器上的本地包。



static void Main(string[] args)

{

DTS.Application App=new DTS.Application();

DTS.PackageSQLServer package= App.GetPackageSQLServer("(local)\\NetSDK", "sa", "",

DTS.DTSSQLServerStorageFlags.DTSSQLStgFlag_Default);

DTS.PackageInfos Infos;

Infos = package.EnumPackageInfos("", false, "");

foreach(DTS.PackageInfo Info in Infos)

{

Console.WriteLine("Name : {0}\tVersionID : {1}",Info.Name,Info.VersionID);

}

Console.Read();

}



取保存在格式化存儲文件中的dts包屬性代碼如下:



static void Main(string[] args)

{

DTS.Package2Class package=new DTS.Package2Class();

DTS.SavedPackageInfos Infos =

package.GetSavedPackageInfos("C:\\Pubs2Pubs2Package.dts");

foreach(DTS.SavedPackageInfo Info in Infos)

{

Console.WriteLine("Name : {0}\tVersionID : {1}",

Info.PackageName,Info.VersionID);

}

package.UnInitialize();

Console.Read();

}



通過Package2Class對象可以執行dts包,或者操作dts包的屬性。代碼如下:



static void Main(string[] args)

{

DTS.Package2Class package=new DTS.Package2Class();

try

{

Object MIA=System.Reflection.Missing.Value;

package.LoadFromSQLServer("(local)\\NetSDK",

"sa", "", DTS.DTSSQLServerStorageFlags.DTSSQLStgFlag_Default, "", "",

"{F580DFC4-1F6A-4D70-B6A1-1C200B0D7890}", "CustomTaskPKG",ref MIA);

Console.WriteLine(package.Description);

package.Description="My description";

Console.WriteLine(package.Description);

}

catch(Exception ex)

{

Console.WriteLine(ex.Message);

}

finally

{

package.UnInitialize();

package=null;

}

Console.Read();

}



如果要使用最新的版本信息,則不填寫版本id信息,代碼如下:

package.SaveToSQLServer("(local)\\NetSDK", "sa", "",

DTS.DTSSQLServerStorageFlags.DTSSQLStgFlag_Default, "", "","",ref MIA,false);



以下是設置dts包全局變量的過程:

static void Main(string[] args)

{

DTS.Package2Class package = new DTS.Package2Class();

try

{

Object MIA=System.Reflection.Missing.Value;

package.LoadFromStorageFile("C:\\Pubs2Pubs2Package.dts","","","",

"Pubs2Pubs2Package",ref MIA);

package.GlobalVariables.AddGlobalVariable("MyVariable","MyValue");

foreach(DTS.GlobalVariable GVar in package.GlobalVariables)

Console.WriteLine("Name : {0}\tValue : {1}",GVar.Name,GVar.Value);

}

catch(Exception ex)

{

Console.WriteLine(ex.Message);

}

finally

{

package.UnInitialize();

}

Console.Read();

}



修改全局變量值語句:

package.GlobalVariables.Item("MyVariable").let_Value("Hello from C#");



以下語句將改動保存到dts包中。

package.SaveToStorageFile("C:\\Pubs2Pubs2Package.dts","","",ref MIA,false);



執行包:

package.Execute();
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved