![](/img/trans.png)
[英]Cannot add own custom EFDataAcces Library Visual studio 2019
[英]Visual Studio 2019 - Cannot add Custom Pipeline Object to Toolbox SSIS
我现在想要完成的只是让我的自定义组件显示在 SSIS 工具箱中。 我一直在寻找有关在 Visual Studio 2019 中创建自定义数据流组件的任何信息。我发现了很多过时的示例和已解决的问题,但没有一个可以帮助我解决我的问题。
根据 Microsoft 对如何执行此操作的描述,您会认为您所要做的就是按照他们的说明进行操作,它就会起作用。 不是这样,至少对我来说还不是。
到目前为止,这是我为简化并让任何工作正常所做的工作:
继承自 PipelineComponent 并添加了 DtsPipelineComponent 属性。
重写的方法(下面的代码)
签署大会
创建要安装到 GAC 的构建后事件并将程序集复制到C:\Program Files\Microsoft SQL Server\130\DTS\PipelineComponents
文件夹。
在 SSIS 项目中,我对 SSIS 工具箱进行了刷新,但我的组件没有出现。 我已经尝试通过转到工具>>选择工具箱项目并选择程序集来浏览程序集。
我收到这条消息:
这是我的简化代码,它什么都不做:很抱歉使用图像发布它,但使用推荐的代码荧光笔也不适用于我。
这是 GAC 列表的屏幕截图:
我肯定错过了什么。
任何帮助或想法将不胜感激。 如果我不能让它工作,我将不得不放弃并求助于脚本组件转换。 真的很讨厌这样做,因为这意味着每个开发人员都必须维护大量额外的代码。
先感谢您。
模糊的回忆,但我会给它一个 go。
安装到 GAC 意味着当 package 运行时,执行引擎将能够找到所需的程序集并执行代码指令。
设计时需要其他地方的程序集,因为......原因。 对于 2005/2008,您必须手动将项目添加到“SSIS 工具箱”。 您正在尝试将项目添加到“工具箱”,这是一个令人困惑的相似名称,但它不是 SSIS。 仅当打开 package 并且项目类型为 SSIS 时,才会填充 SSIS 工具箱。
Visual Studio 现在自动拾取组件,但无论哪种方式,程序集都需要位于目标版本 Microsoft SQL Server XXX DTS 程序集域文件夹中。
假设我为 SQL Server 2017 构建了一个数据流组件。因此我将安装到
C:\Program Files\Microsoft SQL Server\140\DTS\PipelineComponents
如果您构建了一个自定义任务,它将 go 到
....\DTS\Tasks
这将需要管理员权限,但您已经需要它们来 GAC 处理程序集。
这篇红门文章似乎也证实了我所说的。 开发自定义 SSIS 源组件
如果你有聪明的开发人员,你也可以看看使用Biml来创建你的 SSIS 包。 有了它,您可以为公共项目定义单个脚本任务/组件,并且每当您将 Biml 发送到 SSIS 包中时,它们都使用相同的公共核心逻辑位。 如果您不使用 go 自定义组件路径,则不会像您遇到的微妙复制/粘贴 inheritance 那样。 或者您使用声明性框架来描述您的包,也就是 Biml。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.