如何升级VS 2015 ETL解决方案以兼容VS 2017并正常打开?
解决Visual Studio 2017无法打开VS2015 SSDT ETL项目的方案
我经手过不少这类跨版本SSDT项目兼容的问题,给你整理几个一步步来的解决办法:
先确认SSDT核心组件是否安装到位
打开Visual Studio 2017 Installer,点击「修改」按钮,在「工作负载」列表里找到「数据存储和处理」,确保SQL Server Data Tools这个选项被勾选,同时要注意下面的子组件里,针对ETL项目的「Integration Services项目」也必须选中。如果之前漏装了或者版本不匹配,安装完成后重启VS再试。手动编辑项目文件强制升级版本
有时候VS自动升级会"卡壳",这时候手动改项目文件更直接:- 在解决方案资源管理器里右键打不开的项目,选择「卸载项目」
- 右键卸载后的项目,选择「编辑 [你的项目名].dtproj」
- 找到
<ProjectVersion>标签,把原来的14.0改成15.0 - 找到
<SSDTVersion>标签,替换成你当前安装的SSDT版本号(也就是你提到的15.1.61801.210) - 保存文件,右键项目选择「重新加载」,大概率就能打开了。
修复VS和SSDT的安装文件
如果上面的操作还是不行,可能是安装文件有损坏。打开VS Installer,选择「修改」→「修复」,让安装程序自动检查并修复损坏的组件。修复完成后重启VS,再尝试打开项目。
要是修复后还是有问题,可以先卸载当前的SSDT组件,再从VS Installer里重新安装对应VS2017的最新兼容版本(VS2017对应的SSDT最高版本是15.9.x,尽量选稳定的版本)。迁移SSIS项目到目标版本
如果你成功加载了项目,接下来要完成正式的版本迁移:- 打开项目后一般会自动弹出「Integration Services项目迁移向导」,跟着向导走,选择你需要的目标SQL Server版本(比如SQL Server 2017),完成迁移。
- 如果没弹出向导,右键项目→「属性」,在「配置属性」里找到「TargetServerVersion」,设置为对应的版本,然后重新生成项目。
检查第三方依赖兼容性
要是项目里用到了自定义SSIS任务、连接管理器这类第三方组件,得确认它们有没有兼容VS2017和SSDT15.x的版本,旧版本的组件很可能导致项目加载失败,需要更新到兼容版本。
内容的提问来源于stack exchange,提问作者Gargoyle
相关产品推荐
相关产品推荐

