【问题标题】:Assembly referenced in SSIS 2008 script task not working correctlySSIS 2008 脚本任务中引用的程序集无法正常工作
【发布时间】:2011-11-11 09:37:11
【问题描述】:

我在 ssis 脚本任务中引用了一个自定义程序集。脚本任务显然工作正常,但程序集(首先用控制台程序测试)不再工作。 该程序集应该将文本文件转换为 csv 文件以供进一步导入。一旦加载到脚本任务中,引用的函数会创建一个空文件。日志记录没有带来任何附加信息。

目前,该程序集在 GAC 以及 MSSQL 服务器的 DTS\SDK 文件夹中进行了强命名和签名。 有什么想法吗?

【问题讨论】:

  • 您需要提供更多信息,我建议粘贴您问题中涉及的代码。

标签: sql sql-server-2008 ssis


【解决方案1】:

实际上错误出在我自己的程序集中。因此,总结一下在 ssis 脚本任务中包含和使用程序集文件的正确且简单的方法是:

  1. 用正确的框架版本编译程序集(在我的例子中是 3.5)
  2. 签署程序集
  3. 将程序集放入 GAC
  4. 在脚本任务中引用程序集并添加“imports”指令

实际上将程序集放在 DTS\bin 文件夹中并没有产生任何区别。

【讨论】:

    【解决方案2】:

    这就是为什么我通常不喜欢在 SSIS 中使用自定义程序集的原因。在这种情况下,我会编写一个 jig (exe) 来调用程序集并更改 SSIS 来调用我的 exe。在 jig (exe) 中,我将对程序集的调用包装在 try/catch 块中。我会跟踪传入的参数并将任何错误记录到文本文件或系统事件日志中。通常,这种方法可以让我深入了解真正的问题(错误的参数、权限问题、奇怪的数据等),并且是重现问题和验证解决方案的好方法。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-01-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-03-21
      • 1970-01-01
      • 2020-12-05
      • 1970-01-01
      相关资源
      最近更新 更多