在CIS中为for循环在SSIS脚本任务中转换字符串

时间:2013-04-18 12:34:36

标签: c# ssis

我花了一个多小时才找到问题的解决方案 - 现在我很好奇为什么它有效。当我执行一个包时,我在SSIS中遇到了这个错误:

enter image description here

我有一个访问变量的脚本任务。我正确地将它添加到脚本任务的ReadOnlyVariables集合中,并且相信我使用了正确的案例。这是我的脚本行无效:

string textToWrite = (string)Dts.Variables["User::TestNumber"].Value;

最终我将其更改为:

string textToWrite = Dts.Variables["User::TestNumber"].Value.ToString();

一切正常。我的问题是:为什么之前失败了?

1 个答案:

答案 0 :(得分:1)

如果测试编号是一个整数,那么第一行代码会抛出异常,因为没有从Int32到string定义的类型转换,这就是为什么我们有ToString()