2010-10-29 68 views
4

我的一個實體對象(EF4)有一個十進制屬性。在數據庫中的字段是十進制(18,2)實體框架舍入

如果我將該值設置爲30.4777它只發送30.47到插入語句中的數據庫(由跟蹤器確認)。有沒有辦法讓它發送30.4777,然後讓數據庫四捨五入(否則似乎很高興)?

回答

2

您可以自己設置您的小數位域的PrecisionScale屬性。只需右鍵單擊設計器中的屬性,然後選擇Properties。在屬性窗口中,您會看到PrecisionScale。將Scale設置爲4,然後再次嘗試查詢。

+0

他已經有精確設置,並想知道如何讓它圓而不是截斷。這是正常的EF截斷而不是圓? – Dave 2013-01-03 19:11:34

+1

是的,這是正常的EF行爲截斷(像它看起來一樣愚蠢),請參閱http://entityframework.codeplex.com/workitem/735 – 2013-01-17 13:04:50

+1

如果您更新EDMX模型中的精度或縮放比例與數據庫不同,如果將來有人運行「從數據庫更新模型...」命令,則更改將被清除(即重置)。 – 2013-05-29 05:17:21