c#数据表保存值为2dp,但在转移到数据行时丢失2dp

本文关键字:2dp 数据 转移 保存 数据表 | 更新日期: 2023-09-27 18:07:35

我将存储过程调用的结果放入一个数据表中。存储过程以十进制形式返回一列,并返回例如500.00、500.20。

放入数据表后,检查其内容,可以看到小数点保留了下来。

然而,当我循环数据表以读取每个循环e.g. for each (DataRow row in datatablename.Rows),中的每一行时,如果我然后检查行I的内容有500和500.20,即它在小数点后失去了零。

为了显示,我需要能够保留小数点后的零。

我使用的数据表是一个通用数据表e.g. DataTable results = new DataTable().

表需要是通用的,而不是显式地声明每个列,因为许多不同的存储过程的结果需要进入这个表,每个存储过程返回不同的结果(例如,我不想声明大约20个特定的数据表)。

关于如何让DataRow保留小数点后的零的任何想法?

c#数据表保存值为2dp,但在转移到数据行时丢失2dp

你应该在你想要显示它的地方最后格式化值(例如:在你的循环中):

string value = doubleVal.ToString("N2")
http://msdn.microsoft.com/en-us/library/dwhawy9k.aspx