我目前正在使用一个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