18

这就是我在脚本任务中尝试做的事情:

long lngMaxRowsToPull = Convert.ToInt64(Dts.Variables["Project::MaxRowsPerPull"].Value);

我收到一条错误消息,指出该变量不存在。

然而,它被定义为脚本的 ReadOnlyVariable 并且它确实作为项目参数存在。

它定义为脚本的 ReadOnlyVariable

它确实作为项目参数存在

4

2 回答 2

23

很近。;)

您的代码正在尝试访问名为Project::MaxRowsPerPull

实际上, $ 很重要,因此您需要参考$Project::MaxRowsPerPull

另请注意,参数的数据类型为 Int32,但随后将其推入 Int64。您始终可以将较小的类型放入较大的容器中,但如果您尝试用太大的值填充参数,您的包就会爆炸。

于 2013-12-05T21:44:35.683 回答
1

您需要按照语法将 $ 添加到参数获取名称中。

long lngMaxRowsToPull = Convert.ToInt64(Dts.Variables["$Project::MaxRowsPerPull"].Value);
于 2017-12-08T03:51:00.053 回答