我有一个numericUpDown并将属性的小数位数设置为3,因此它变为0.000
这是代码
Decimal inputGrossWeight = numGrossWeight.Value;
if (inputGrossWeight = 0.000)
{
MessageBox.Show("Gross Weight must be filled!");
}
else
{
Data newData = new Data();
newData.grossWeight = inputGrossWeight;
}
注意:
numGrossWeight是numericUpDown的名称
grossWeight是我数据库中的列名
并将其存储到数据库类型为float
的数据库中因此,当用户输入2.365时,它也将存储到数据库2.365中。
我尝试过多种方法,它给了我错误:
无法将类型'decimal'隐式转换为'double'。一个明确的 存在转换(你错过了演员吗?)
double类型的文字不能隐式转换为类型 “十进制”;使用'M'后缀来创建此类型的文字
我的代码出了什么问题?
答案 0 :(得分:4)
您正尝试在if
声明中进行分配。
试试这个
if (inputGrossWeight == 0m)
正如Jon Skeet在评论中提到的那样,通过添加m
,您确保使用decimal
字面值,从而比较苹果和苹果。