将价格保存为十进制或字符串?

时间:2015-07-26 13:36:45

标签: c# asp.net database

我有一个ASP.NET Web项目。我有一个"价格"我的数据库中的字段,定义为十进制。

当用户在文本框中插入价格时,文本框中的字符串将保存在"价格"字段(我强制用户只输入数字)。

所有数据都以ListView显示。问题是当用户没有提供任何值(空文本框)时,我得到一个例外。

我可以理解为什么会发生这种情况:因为它无法将空字符串转换为十进制类型。如果用户没有提供任何值,我想在ListView中显示一个空字段。我怎样才能做到这一点?

2 个答案:

答案 0 :(得分:0)

这是您自己的逻辑验证。但是,您可以将价格字段设置为可空,或者如果没有值,则检查文本框,然后将价格设置为0.00

答案 1 :(得分:0)

我建议使用默认值0.00而不是空值或空值。如果用户未提供任何值,请对其进行验证并将文本框的值转换为0.00。

如果您不想要此建议,请检查您的数据库,然后allow null小数字段。