这就是我在脚本任务中尝试做的事情:
long lngMaxRowsToPull = Convert.ToInt64(Dts.Variables["Project::MaxRowsPerPull"].Value);
我收到一条错误消息,指出该变量不存在。
然而,它被定义为脚本的 ReadOnlyVariable 并且它确实作为项目参数存在。
很近。;)
您的代码正在尝试访问名为Project::MaxRowsPerPull
实际上, $ 很重要,因此您需要参考$Project::MaxRowsPerPull
另请注意,参数的数据类型为 Int32,但随后将其推入 Int64。您始终可以将较小的类型放入较大的容器中,但如果您尝试用太大的值填充参数,您的包就会爆炸。
您需要按照语法将 $ 添加到参数获取名称中。
long lngMaxRowsToPull = Convert.ToInt64(Dts.Variables["$Project::MaxRowsPerPull"].Value);