我有一个用 RavenDB 存储的模型,以这种方式完成:
public abstract class Animal
{
   public string Id { get; set; }
   public int LegsNumber { get; set; }
}
public class Giraffe: Animal
{
   public double NeckLength { get; set; }
}
在我的 MVC 控制器中,我查询所有 Giraffe 并以这种方式将结果放入 Json 格式:
return new JsonResult 
{ 
   JsonRequestBehavior = System.Web.Mvc.JsonRequestBehavior.AllowGet, 
   Data = DocumentSession.Query<Giraffe>() 
};
输出类似于
[{"NeckLength":2.5, "Id":"bob", "LegsNumber":4}, {...}, ...]
如何自定义字段顺序以获得如下结果:
[{"Id":"bob", "LegsNumber":4, "NeckLength":2.5}, {...}, ...]
?
如果您很好奇并且想知道我为什么要更改顺序是因为我有一个通用的 javascript 片段,它可以获取 json 并按原样打印出来:
 for (var field in data[0]) {
    var row = '<tr>';
    row += '<td><b>' + field + '</b></td>'
    $.each(data, function (i, value) {
       row += '<td>' + value[field] + '</td>'
    });
    row += '</tr>';
    result += row;
 }