我想从使用return Json(myObject)
一个MVC控制器作为JSON返回一个2D矩阵。 目前,我做这种方式: return Json(myObject.ToJaggedArray())
。返回2个dimenstional阵列JSON从MVC控制器
ToJaggedArray方法是这样的:
public Field[][] ToJaggedArray()
{
var jaggedArray = new Field[Rows][];
for (int i = 0; i < Rows; ++i)
{
jaggedArray[i] = new Field[Columns];
for (int j = 0; j < Columns; j++)
{
jaggedArray[i][j] = this[i, j];
}
}
return jaggedArray;
}
我让JS调用这种方式:
var data = {};
$.getJSON("/Game/GetBoard", function (json) {
data = json;
});
这一切运作良好,除了一个事实,我想避免调用ToJaggedArray()在myObject上。有什么我可以实现的(界面或其他东西),使它可以开箱即用吗?重要的是要获取二维数组,所以实现IEnumerable的是不是一个选项...
哦,真的很容易。我没有想过按照你做过的方式列举维度。这解决了,谢谢。 我认为没有办法让它使用更少的代码工作,但如果有人看到它,它不是接受的答案的变体,那么请张贴它! – 2012-02-26 12:57:18