我目前正在使用一個C#控制檯應用程序,在那裏我想執行某些SSIS包,這是SSIS項目的一部分。從C#獲取項目級連接管理器#
這裏的問題是SSIS包中的一些連接管理器在項目級和一些在包級別。
控制檯應用程式:
Package pkg;
Application app;
DTSExecResult pkgResults;
app = new Application();
pkg = app.LoadPackage(pkgLocation, null);
PrintPackageInfo(pkg);
pkgResults = pkg.Execute();
PrintOutput(pkgResults, pkg);
錯誤輸出:
The connection <connectionid> is not found. This error is thrown by Connection collection when the specific connection element is not found.
然而,當i循環在Connections
爲pkg
對象這樣
foreach(ConnectionManager con in pkg.Connections)
{
Console.WriteLine("\t Connection Manager {0}", con.Name);
Console.WriteLine("\t Connection String {0}", con.ConnectionString);
}
它輸出包級連接管理器,但不輸出項目級別的連接管理器。
做任何你的包級別的連接管理器共享相同的名稱作爲項目的呢? –
沒有所有連接管理器都有唯一的名稱。 – uzr