2016-12-06 59 views
2

我有一個當前導致我的程序中的貨幣輪換的問題。如果它是一個7位數的號碼,它會自動將其加起來,我不明白這個問題。C#舍入問題中的DataFormatString

例如:當存儲在DB

100000.99會自動舍入到100001.00。

但是,如果我有六位數以下的任何東西,它會正確存儲。

[Display(Name = "PO Value")] 
[DisplayFormat(DataFormatString = "{0:C}")] 
public float POValue { get; set; } 

有什麼建議嗎?

該應用程序是使用C#和MVC4引擎在Visual Studio 2010中構建的。

+0

我不認爲這是一個C#問題可能更像是在SQL列上的'寬度' –

+0

你可以嘗試添加一個'[DataType(DataType.Currency)]'屬性,看看是否有幫助 –

回答

0

感謝Michael Coxon我解決了這個問題!在數據庫中,POValue列是用一個DataType設置爲真實的。因此,精確度只有7個是我的問題。我將它修改爲DataType float。