Visual Studio 2019中DTS.Runtime.Application实例化报错求助
解决SSIS 15.0版本中DTSRuntimeWrap程序集找不到的问题
针对VS2019 Enterprise v16.11.15 + SSIS 3.16环境下,加载15.0版本SSIS程序集时提示Microsoft.SqlServer.DTSRuntimeWrap找不到的问题,提供以下可行解决方案:
1. 配置程序集绑定重定向
先确认Microsoft.SqlServer.DTSRuntimeWrap.dll是否存在于C:\Program Files (x86)\Microsoft SQL Server\150\DTS\Binn路径下。若存在,在项目的app.config或web.config中添加以下绑定配置,明确指定程序集的加载路径:
<runtime> <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"> <dependentAssembly> <assemblyIdentity name="Microsoft.SqlServer.DTSRuntimeWrap" publicKeyToken="89845dcd8080cc91" culture="neutral" /> <bindingRedirect oldVersion="0.0.0.0-15.0.0.0" newVersion="15.0.0.0" /> <codeBase version="15.0.0.0" href="file:///C:/Program Files (x86)/Microsoft SQL Server/150/DTS/Binn/Microsoft.SqlServer.DTSRuntimeWrap.dll" /> </dependentAssembly> </assemblyBinding> </runtime>
2. 安装SQL Server 2019 SSIS Runtime独立包
VS2019自带的SSIS组件可能不包含完整的运行时依赖。下载并安装SQL Server 2019 Integration Services Runtime独立安装包,它会自动部署所有15.0版本的DTS相关程序集到系统路径,解决依赖缺失问题。
3. 设置项目平台目标为x86
右键项目 → 属性 → 生成 → 平台目标,将其设置为x86。因为SSIS 15.0的多数核心程序集为32位,64位项目环境下可能无法正确加载32位依赖。
4. 通过NuGet管理SSIS引用
移除手动添加的Microsoft.SqlServer.Dts.Runtime引用,打开NuGet包管理器,搜索并安装Microsoft.SqlServer.ManagedDTS的15.x版本(推荐15.0.2000.9或兼容版本)。NuGet会自动处理依赖项的引用路径和版本匹配问题,避免手动引用导致的路径错误。
内容的提问来源于stack exchange,提问作者Kamel Jtita
相关产品推荐
相关产品推荐

