我正在尝试使用 C# 以编程方式执行 SSIS 包。
Application app = new Application();
Package package = app.LoadPackage(pkgFullPath, null);
package.Execute();
我收到一条错误消息:
Error in Microsoft.SqlServer.Dts.Runtime.TaskHost/SSIS.Pipeline : To run a SSIS package outside of SQL Server Data Tools you must install Conditional Split of Integration Services or higher.
Error in Microsoft.SqlServer.Dts.Runtime.TaskHost/SSIS.Pipeline : To run a SSIS package outside of SQL Server Data Tools you must install Lookup of Integration Services or higher.
我在 Visual Studio 2010 中使用 SSIS,但从 VS 2012 中的 nunit 测试执行 C# 代码(运行 .Net 4.0)
如果我通过调试启动它(按 F5),该包在 VS 2010 的 SSIS 项目中运行良好,但如果我尝试从命令行使用 dtexec 运行它,它会失败并出现相同的错误(在 32 位和 64 位中都失败) dtexec 的版本)。如果我使用 ctrl + F5 从 Visual Studio 内部启动它(不调试),它也会失败并出现相同的错误
我在网上找到了一些文章,表明它与 64 位和 32 位问题有关,但是在运行两个版本的 dtexec 时我看到了同样的错误。我正在使用 dtexec 的 11.0.2100.60 版本,它与 VS 2010 中的 SQL Server Integration Services Designer 的版本相匹配。
如果我运行一个没有条件拆分和查找的简单包,我不会收到错误消息。我是否必须安装一些额外的东西才能在 Visual Studio 之外运行它?
有任何想法吗?