我正在使用 ASP.NET MVC 3,并且正在尝试将简单的 json 数组绑定到List<JsonPositions>
. JsonPositions
是一个自定义对象,与数组中的 json 对象具有相同的属性。
这是我的数组在客户端上的样子:
var widgetPositions = [
{ col: 5, row: 1, id: 2 },
{ col: 4, row: 5: id: 40 }
];
$.ajax({
url: 'the url',
data: { positions: widgetPositions },
success: function () {
alert('Save successful.');
},
error: function () {
alert('An error occurred while trying to update the widget positions.');
}
});
在 Chrome 中检查请求时,此代码似乎工作正常。
在控制器中,我们有以下操作方法:
public void UpdatePositions(List<JsonPosition> positions)
{
// debugging here
}
当我检查widgetPositions
列表时,它确实有两个项目,就像 json 数组一样,但是对象的属性与客户端上对象的值不匹配。这是对象的JsonPosition
样子:
public class JsonPosition
{
public int id { get; set; }
public int col { get; set; }
public int row { get; set; }
}
谢谢你的尽心帮助 :)