我從我的網頁發送了一個AJAX調用,將以下數據發送到我的MVC3操作方法。MVC3模型綁定器綁定到小數而不是int的問題
{
"name":"Test",
"newitems":[
{"id":15,"amount":100,"unit":"gram"},
{"id":1,"amount":75,"unit":"gram"},
{"id":46,"amount":25,"unit":"gram"}
]
}
在我的控制,我有以下類別:
public class NewDataItem
{
public string name { get; set; }
public List<NewDataItemDetails> newitems { get; set; }
}
public class NewDataItemDetails
{
public int id { get; set; }
public int amount { get; set; }
public string unit { get; set; }
}
而接收到請求的操作方法有NewDataItem
作爲參數。這是完美的,但是NewDataItemDetails的amount屬性可能並不總是包含int。例如它可能是50.45。因此,我將public int amount { get; set; }
更改爲public decimal amount { get; set; }
。
之後該變化量始終顯示爲0,而不是它做時,它是一個int適當的值。
爲什麼MVC未能價值時,它是一個小數,當它的工作只是罰款爲int的屬性綁定?
複製的[這一個](http://stackoverflow.com/questions/5698984/default-asp-net-mvc-3-model-binder-doesnt-bind -decimal-propeties)? – Sumo
對於所有輸入值,例如「5」或「5.00」,是否爲0? –
@Sumo - 關閉,但我沒有完全相同的問題ryudice得到它的工作,例如5.00,但是我在5和5.00都得到同樣的問題。 –