0

MyDataSet myDataSetwithMyTablestring MyNumber(名称已更改)。然后在表中添加一行(现有代码):

decimal d = GetSum();
myDataSet.MyTable.AddMyTableRow(d.ToString("F2"));

现在我必须得到那个十进制数。但是FormatException当我尝试时它会抛出

decimal.Parse(myDataSet.MyTable[0].MyNumber);
// or
decimal.Parse(myDataSet.MyTable[0].MyNumber, CultureInfo.InvariantCulture);
//or
decimal.Parse(myDataSet.MyTable[0].MyNumber, CultureInfo.CurrentCulture)
//or
anything else..
4

3 回答 3

2

几天前我遇到了类似的问题。然而,这是我在 MVC 项目中的 ModelBinding。我不得不覆盖负责将十进制值绑定到模型变量的类。

尝试将句号 (.) 替换为逗号 (,)

于 2013-09-11T13:40:21.790 回答
0

我猜想 FormatException 表明您没有将字符串值放入 Decimal.Parse 方法。

http://msdn.microsoft.com/en-us/library/cafs243z.aspx

MSDN 建议:

FormatException = s 格式不正确。

从外观上看,您访问的是列本身,而不是其中包含的数据。

于 2013-09-11T13:42:27.357 回答
0

我通过为这些数字创建额外的十进制列来解决这个问题。

于 2013-09-27T07:10:46.710 回答