我使用最新的Breezejs(1.5.3)在带有Entity Framework的sql server中进行数据操作。保存操作成功完成。 savemap具有带满刻度的十进制值,但更新后DB中的字段具有错误的刻度(小数点数) 例如,savemap的值为565.13435435,将在db字段decimal(19,5)中保留,但在更新后该字段有2个小数点
答案 0 :(得分:2)
这是一个EF问题。 EF中decimal
类型的默认比例为2.您必须告诉EF您的列的比例是多少。如果您只需要4个小数位,则可以使用快捷方式表示它是Money类型:
[Column(TypeName = "Money")]
public decimal MyDecimalValue { get; set; }
但是对于所有其他情况,您需要在OnModelCreating
的{{1}}方法中指定精度:
DbContext