Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/287.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# BIDS和VS中的SSIS自定义控件任务调试UI_C#_Visual Studio 2010_Ssis_Custom Component_Bids - Fatal编程技术网

C# BIDS和VS中的SSIS自定义控件任务调试UI

C# BIDS和VS中的SSIS自定义控件任务调试UI,c#,visual-studio-2010,ssis,custom-component,bids,C#,Visual Studio 2010,Ssis,Custom Component,Bids,我已经在C#中创建了一个SSIS自定义任务,目前正在开发UI。我想知道是否有更好的方法来调试UI,而不是编译项目,将DLL复制到适当的DTS文件夹中,然后在BIDS中打开测试包,然后将流程附加到Visual Studio。这一部分我并不担心,但一旦您在VisualStudio中测试了UI并对UI进行了更改。我必须重新编译DLL,然后重复整个过程。我必须关闭出价和VS,因为在我重新开始整个过程之前,他们不会释放DLL。有没有人有加快这一过程的建议。每次这样做都让人很沮丧。对不起,这是微软设计的唯一

我已经在C#中创建了一个SSIS自定义任务,目前正在开发UI。我想知道是否有更好的方法来调试UI,而不是编译项目,将DLL复制到适当的DTS文件夹中,然后在BIDS中打开测试包,然后将流程附加到Visual Studio。这一部分我并不担心,但一旦您在VisualStudio中测试了UI并对UI进行了更改。我必须重新编译DLL,然后重复整个过程。我必须关闭出价和VS,因为在我重新开始整个过程之前,他们不会释放DLL。有没有人有加快这一过程的建议。每次这样做都让人很沮丧。

对不起,这是微软设计的唯一方法。如果你一遍又一遍地重复这个过程,我建议你为所有操作创建一个批处理文件,这样你就不用一遍又一遍地执行5个步骤,只需启动批处理文件并完成它

我想我会加上这个。我发现调试SSIS组件的最佳方法是:

在“生成”下的“项目属性”中,将输出路径设置为正确的SQL Server DTS子文件夹,然后在“生成后事件”下的“生成”中设置:

“C:\Program Files(x86)\Microsoft SDK\Windows\v7.0A\bin\NETFX 4.0 Tools\gacutil”-u”C:\Program Files(x86)\Microsoft SQL Server\100\DTS\Tasks\$(TargetFileName)” “C:\Program Files(x86)\Microsoft SDK\Windows\v7.0A\bin\NETFX 4.0 Tools\gacutil”/if“$(TargetPath)”

使用gac卸载程序集,然后重新安装它。我卸载它的原因是因为我在没有引用新插入的DLL时遇到了很多问题。即使重新启动我的计算机,它也一直引用旧的DLL。我猜是它缓存了它。我也在用它为2012年的投标开发组件。我知道您不必为2012年的投标向gac签署或注册组件,但投标在引用新创建的dll时遇到了问题。通过这样做,我不必每次关闭出价或删除并读取设计屏幕上的组件


你会认为有一个更简单的版本。

你可能想读马修·罗奇的博客文章。这本书内容丰富,给你提供了更好的做事方式

谢谢你的回复。我想确保我没有错过一些简单的东西。您可能认为他们会想出更好的方法。$(TargetFileName)在这里不起作用,因为您需要显示名称。见公认的答案。