【发布时间】:2017-03-09 02:48:31
【问题描述】:
我目前正在使用 C# 控制台应用程序,我想在其中执行某些 SSIS 包,这些包是 SSIS 项目的一部分。
这里的问题是,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.
但是,当我像这样遍历 Connections 的 pkg 对象时
foreach(ConnectionManager con in pkg.Connections)
{
Console.WriteLine("\t Connection Manager {0}", con.Name);
Console.WriteLine("\t Connection String {0}", con.ConnectionString);
}
它输出包级别的连接管理器,但不输出项目级别的连接管理器。
【问题讨论】:
-
您的包级连接管理器是否与您的项目连接管理器同名?
-
并非所有连接管理器都有唯一的名称。