2012-04-04 41 views
3

批註我們有這樣的代碼:數據與十進制工作不

[DisplayName("Refresh Rate")] 
    [DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "{0:G2}")] 
    [Range(1.00, 150.00, ErrorMessage = "Must be between 1 and 150")] 
    public virtual decimal RefreshRate { get; set; } 

不工作。如果我們將其更改爲

[Range(0.00, 150.00, .... 

它的工作原理。如果我們嘗試使用

[Range(typeof(Decimal), "1", "150", .... 

適當方法它也不起作用。通過「不起作用」我的意思是它不驗證。爲什麼0會工作,但沒有任何其他號碼?我們如何使這個代碼工作?

回答

0

我不知道什麼是你的目的是驗證小數,但也許這一招對你的作品:

,因爲你需要2個精度數字,還有一個數據類型,也許你可以使用它:貨幣。所以,也許你了以下工作:

[DisplayName("Refresh Rate")] 
[Datatype(DataType.Currency)] 
[Range(1, 150, ErrorMessage = "Must be between 1 and 150")] 
public virtual decimal RefreshRate { get; set; } 

請告訴我,如果它不工作...