我使用Linq2Sql将一个简单的对象插入到数据库中(是的,是的,我很快就会更改为EF)。
此对象具有小数值。当我调试时,我可以看到价格的价值是6.8。
但是,当我插入数据库时,值为7.字段的数据类型为decimal(18, 0)
。
如果它有帮助,我认为这是因为我在丹麦的电脑上,并且圆角字符是“,”而不是“。”。
我的插入代码:
var order = new PlacedOrder()
{
DateCreated = DateTime.Now,
UserId = userid,
PaymentInfo = paymentInfoId,
ShippingInfo = shippingInfoId,
OrderState =orderState.ToString(),
PaymentMethod = paymentMethod.ToString(),
Email = email,
Phone = phone,
PdfFilePath = pdfPath,
Price = price,
PriceVat = vat
};
db.PlacedOrders.InsertOnSubmit(order);
db.SubmitChanges();
有什么想法吗?
答案 0 :(得分:2)
将数据类型从decimal(18, 0)
更改为decimal(18, 2)
,以存储最多2个小数位的值,或者{n {3}},用于n个精度,带有m个小数点。
由于当前数据类型为decimal(18, 0)
,因此小数值不会存储在DB中。