C# DataTable.compute()值对于Int32太大或太小

C# DataTable.compute()值对于Int32太大或太小,c#,C#,所以我想从一个字符串中计算一些东西,比如: var s = dt.Compute(exps[0].Replace("x", i.ToString()), ""); 当exps[0]为x*x*x时,我得到一个错误:值对于Int32来说太大或太小 事实上,它以前对任何数字都有效,我不知道出了什么问题 i是for循环中的int,dt是数据表,当您执行x³时,溢出int并不需要太多1290是您可以收集的最大数据集。所以如果i大于此值,则这是预期值。您可以尝试确保列是长的——这会给您更多的空间,但是对于

所以我想从一个字符串中计算一些东西,比如:

var s = dt.Compute(exps[0].Replace("x", i.ToString()), "");
当exps[0]为
x*x*x
时,我得到一个错误:
值对于Int32来说太大或太小

事实上,它以前对任何数字都有效,我不知道出了什么问题


i
for
循环中的
int
dt
数据表
,当您执行
时,溢出
int
并不需要太多
1290
是您可以收集的最大数据集。所以如果
i
大于此值,则这是预期值。您可以尝试确保列是
长的
——这会给您更多的空间,但是对于非常大的数字,您需要切换到
双精度
十进制
(注意它们在尾部失去精度)。

您可以代替整数。谢谢@Sinatr addig
.0
,直到字符串结束。