我在 Visual Studio 2015 中向 SSIS 添加自定义 SSIS 组件时遇到问题。
我的系统是: Windows 8.1 64 位
Visual Studio 社区 2015 版 14.0.24720.00 更新 1
Microsoft SQL Server 集成服务设计器 版本 13.0.900.80 (我已经安装了 SQL Server 2016 CTP3.2,所以 SSIS 的版本是这个版本——这可能是问题的一部分,它不是一个完全发布的产品,这可能是一个错误)
微软 .NET 框架 版本 4.6.01055
我试过使用 110 和 120 的程序集。我已经将两个 dll 添加到 GAC,将它们放在具有不同强签名名称的 x86 和 x64 文件夹中(见下文)。
110 个程序集
c:\Program Files (x86)\Microsoft SQL Server\110\DTS\PipelineComponents c:\Program Files\Microsoft SQL Server\110\DTS\PipelineComponents
120 个程序集
c:\Program Files (x86)\Microsoft SQL Server\120\DTS\PipelineComponents c:\Program Files\Microsoft SQL Server\120\DTS\PipelineComponents
我已经对此进行了研究,但找不到问题的任何明确答案。人们似乎提出问题,得到一些回应,然后没有回应告诉任何人如何解决这个问题,如以下帖子所示。
Visual Studio 2015 Integration Services project does not pick up my custom SSIS component
与原始帖子的唯一区别是我使用的是适用于 Visual Studio 2015 的 SQL Server Data Tools Preview(12 月),但这应该无关紧要吧?
我已经尝试更改项目中引用的程序集。在尝试我自己的代码后,我发现以下页面描述了如何开始构建自定义 SSIS 组件,并且无需做太多工作即可构建它,将 dll 添加到 GAC 和适当的 DTS 文件夹。
真正有用的是开发一个安装程序来获取系统设置,安装到 GAC,并将 dll 复制到正确的文件夹以供 SSIS 工具箱获取。这几乎就好像 Microsoft 想让创建和安装新的 SSIS 组件变得尽可能困难。
所以我有以下问题: 1. 我应该为 Visual Studio 2015 中的 SSIS 组件使用什么版本的 .NET? 2. 我应该使用什么版本的 gacutil(我听说这很重要)? 3. dll需要放到什么文件夹才能被SSIS工具箱提取。 4.我应该将dll放在x86或x64文件夹中吗?我的系统是 x64,但 Visual Studio exe 是 x86 可执行文件,所以我猜 x86 文件夹是正确的。 5.我把dll放在多个文件夹里有关系吗? 5. 有没有人真正设法在 Visual Studio 2015 中添加自定义 SSIS 组件?
如有任何帮助或意见,我们将不胜感激。
马特
最佳答案
OP 的评论,转换为答案:
好的,我终于设法解决了这个问题:
我使用的是 .NET Framework 4.6。我确保使用以下文件夹中的 gacutil.exe 添加到 gac:C:\Program Files (x86)\Microsoft SDKs\Windows\v10.0A\bin\NETFX 4.6 Tools 并将 dll 复制到以下位置文件夹:C:\Program Files (x86)\Microsoft SQL Server\130\DTS\PipelineComponents
刷新 SSIS 工具箱后,组件现在出现在公共(public)文件夹/子部分中。
我希望这对遇到此问题的其他人有所帮助。
– mattp 2016 年 1 月 31 日 2:14
关于c# - Visual Studio 2015 SSIS - 未在 SSIS 工具箱中选取自定义 SSIS 组件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35109219/