2

我使用以下链接中给出的说明创建了一个自定义数据源:http: //msdn.microsoft.com/en-us/library/ms136088.aspx

但是,一旦我构建项目并尝试将新数据源添加到工具箱中,就会出现以下错误:

'C:\Somepath\bin\Debug\CustomDataSource.dll' 中没有可以放在工具箱上的组件

以下是我使用过的工具:

创建和构建自定义数据源;Visual Studio 2010 & 内置于 Framework 3.5

创建 SSIS 包 SSIS - SQL Server 2008 R2 & SQL Server Business Intelligence Development Studio (VS2008)

任何帮助将不胜感激。

南墩

4

2 回答 2

4

我找到了问题的答案;这是解决方案,希望对某人有所帮助。

参考 - http://msdn.microsoft.com/en-us/library/ms403356.aspx

  1. 将 dll 复制到以下文件夹。确切的文件夹取决于您使用的是 x64 还是 x86(两者都使用它并没有什么坏处):

    C:\Program Files (x86)\Microsoft SQL Server\100\DTS\PipelineComponents
    C:\Program Files\Microsoft SQL Server\100\DTS\PipelineComponents

  2. 将 dll 安装到您的 GAC。您需要对其进行签名才能执行此操作。

  3. 在 BI Dev Studio 中,转到工具 > 选择工具箱项。您将在“SSIS 数据流项”选项卡中找到您的数据源

对于第 1 步和第 2 步,您可能会发现进行如下构建后事件很有帮助:

"C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\bin\NETFX 4.0 Tools\gacutil.exe" -u $(TargetName) 
"C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\bin\NETFX 4.0 Tools\gacutil.exe" -iF $(TargetFileName) 
copy $(TargetPath) "C:\Program Files\Microsoft SQL Server\100\DTS\PipelineComponents" 
copy $(TargetPath) "C:\Program Files (x86)\Microsoft SQL Server\100\DTS\PipelineComponents"

对答案的小编辑:

如果您将 SSIS 2012 与 BIDS 2010 一起使用,工具箱项目会自动添加(即您不必转到工具 > 选择工具箱项目)您只需将其复制到 dll 正确的位置(参考 - http:/ /fendy-huang.blogspot.com/2011/09/how-to-add-ssis-custom-component-to.html):

C:\Program Files\Microsoft SQL Server\110\DTS\PipelineComponents   
C:\Program Files (x86)\Microsoft SQL Server\110\DTS\PipelineComponents   
C:\Program Files\Microsoft SQL Server\110\DTS\Tasks   
C:\Program Files (x86)\Microsoft SQL Server\110\DTS\Tasks
于 2013-04-16T14:27:14.983 回答
1

这里有一个报告,通过公开课程解决了类似的问题。(另外,签署程序集并将其放入 GAC。)

这是一个需要实现 IComponent 并从 Component 类继承的情况。

当我用谷歌搜索错误消息时,我看到了许多其他帖子。这些有帮助吗?

于 2013-04-15T18:35:12.760 回答