我正在尝试将json绑定到ASP .net MVC 4中的模型。模型确实已创建但属性未填充。
我的javascript:
$.ajax({
type: 'POST',
url: "/Admin/" + method,
contentType: 'application/json; charset=utf-8',
data: JSON.stringify(form.serializeArray()),
success: function (data) {
if (data.Success == true) {
}
}
});
我的班级:
public class Taxes {
public int Id { get; set; }
public string Name { get; set; }
public decimal Rate { get; set; } }
我的方法:
[HttpPost]
public JsonResult AddTax(Taxes tax)
{
return Json(new { Success = true, tax.Id });
}
Json:
[{"name":"Id","value":"1"},{"name":"Name","value":"fsdfs"},{"name":"Rate","value":"18"}]
结果是:
Id = 0
Name = Null
Rate = 0
答案 0 :(得分:2)
嗯,你已经写好了你的问题,但你只是不读它。你的来电 JSON.stringify(form.serializeArray())正在为您生成此内容:
[{"name":"Id","value":"1"},{"name":"Name","value":"fsdfs"},{"name":"Rate","value":"18"}]
只能映射到这样的内容:
IEnumerable<SampleClass> model
SampleClass具有属性:
public class SampleClass
{
public string name {get;set;}
public string value {get;set;}
}
您需要不同类型的方法,其中包括:
JSON.stringify将为您的Taxes类生成正确的JSON表示。
检查此处的实施: