SSIS 2017 升级问题

SSIS 2017 Upgrade issue

我们正在将包(包在包部署模型中)从 SSIS 2012 更新到 SSIS 2017。所有包中都有很多脚本组件。当我们升级软件包时出现错误

描述:CS0234 - 命名空间 'Microsoft.SqlServer' 中不存在类型或命名空间名称 'Dts'(是否缺少程序集引用?),ScriptMain.cs,14、26 结束错误

配置: SQL 服务器 2017 Visual studio 企业 2015 + SSDT 2015

我们尝试了在脚本组件中删除和重新添加 assemble 文件的不同选项。看起来 Microsoft.Sqlserver.ManagedDts assemble 文件在 2017 版本中有问题。当我们将包升级到 SSIS 2016 时,包工作正常。

当我们尝试从 SQLSERVER 2017 中的 Sqlserver 代理作业 运行 SSIS 2016 包时,它正在尝试将包升级到 2017 并抛出与上述类似的错误。

任何解决方案将不胜感激。

我们混合使用了直接由 SSIS 和 BIML 生成的包,它们都遇到了同样的问题。再次努力寻找答案

我们确实找到了解决方法,但它远非理想:

  1. 查看 dtsx 包上的代码
  2. 找到项目节点
  3. 找到包含 AssemblyName 节点的 PropertyGroup 节点
  4. 向此 PropertyGroup 添加 TargetFrameworkVersion,值为 v4.5
  5. 保存

现在如果你打开包裹你可以build/Execute你的包裹

我忘记了这个 post,但只是为了一些额外的信息,Varigence 为我们提供了 BIML 语言的下一个版本(2018 年 5 月 25 日左右)和我们的问题的预发布(至少自动化包构建)已经消失