我有一个条件表达式错误地将变量的值报告为等于0,而实际上它包含的整数值为50000000。
表达式为@[User::RowCount] != 0
,如果它的计算结果为False,则执行停止。问题是,尽管@[User::RowCount]
的值为5000000,某些表的表达式一致地的计算结果为False(流程为循环中的每个表执行一次)。
如果我将表达式翻转到@[User::RowCount] == 0
,则其值为True。
当我使用Visual Studio调试器观察变量的实际值时,Type等于'Int32',而Value等于5000000。我在preExecute和postExecute断点处都检查了该值和表达式的结果,结果是相同。
为什么调试器会报告变量的值为> 0,而表达式却认为变量== 0?