我有一個Ajax調用是:爲什麼我的ajax調用(返回json)沒有獲得小數屬性?
$(document).ready(function() {
$("a").click(function (event) {
$.ajax({
url: '/',
type: 'POST',
data: JSON.stringify({ Name: 'foo', Price: 5.0 }),
contentType: 'application/json',
dataType: 'json',
success: function (data) { alert(data); }
});
event.preventDefault();
});
});
這裏是我的視圖模型。
public class ProductViewModel
{
[Required, StringLength(60)]
public string Name { get; set; }
[Required, Range(0, 100000)]
public decimal Price { get; set; }
}
當我發送呼叫......只有「富」是在對視圖模型P,但不是價格。
[HttpPost]
public JsonResult Index(ProductViewModel p)
{
var rslt = "success";
return Json(rslt);
}
我現在用的是
ValueProviderFactories.Factories.Add(new JsonValueProviderFactory());
任何想法?
這是一個驗證器,不幸的是,這與我對不起的問題無關。 – Rushino 2012-02-06 01:07:05
你有沒有想過嘗試這個解決方案?你可以帶馬去水。但你不能喝它! – 2012-02-06 05:56:59
我試過不用擔心。 :)但正如我所說的問題是無關的驗證,我很確定。問題是默認模型綁定器中的一個錯誤,它將decimal看作int。 – Rushino 2012-02-06 13:55:01