将JsonResult与jQuery一起使用

将JsonResult与jQuery一起使用,jquery,asp.net-mvc,json,model-view-controller,Jquery,Asp.net Mvc,Json,Model View Controller,我需要为jQuery插件返回一个Json 它需要是这样的:[{“name”:“Testing”,“desc”:“OB-2014-0202”,“values”:[{“Status”:2,“from”:“\/Date(1391295600000)\/”,“to”:“\/Date(1392505200000)\/”,“customClass”:null,“label”:“请勿删除”}], 但是JsonResult返回 [{ "name": "DO NOT DELETE", "desc": "OB-20

我需要为jQuery插件返回一个Json

它需要是这样的:
[{“name”:“Testing”,“desc”:“OB-2014-0202”,“values”:[{“Status”:2,“from”:“\/Date(1391295600000)\/”,“to”:“\/Date(1392505200000)\/”,“customClass”:null,“label”:“请勿删除”}],

但是JsonResult返回

[{ "name": "DO NOT DELETE", "desc": "OB-2014-0202", "values": { "Status": 2, "from": "\/Date(1391295600000)\/", "to": "\/Date(1392505200000)\/", "customClass": null, "label": "DO NOT DELETE" } }],
请注意,“values”节点缺少[]

以下是Json的生成方式:

public class JsonOrdersGantt
{
    #region Constructors

    public JsonOrdersGantt(IEnumerable<Order> listOrders)
    {
        Orders = new List<JsonOrderGantt>();

        foreach (var order in listOrders)
        {
            Orders.Add(new JsonOrderGantt(order));
        }
    }

    #endregion

    #region Properties

    public List<JsonOrderGantt> Orders { get; set; }

    #endregion
}

public class JsonOrderGantt
{
    #region Constructors

    public JsonOrderGantt(Order order)
    {
        name = order.ordBrand;
        desc = order.ordPO;
        values = new JsonOrderGanttValues(order);            
    }

    #endregion

    #region Properties
    public string name { get; set; }
    public string desc { get; set; }
    public JsonOrderGanttValues values { get; set; }

    #endregion
}

public class JsonOrderGanttValues
{
    #region Constructors

    public JsonOrderGanttValues(Order order)
    {
        from = order.ordStartDate;
        to = order.ordEndDate;
        customClass = order.ordStatus.ToString();
        label = order.ordBrand;
    }

    #endregion

    #region Properties

    public DateTime? from { get; set; }
    public DateTime? to { get; set; }
    public string customClass  { get; set; } //: "ganttRed"
    public string label  { get; set; }
    #endregion
}
你知道我如何用[]获取Json值吗?(或者使用jQuery使其在没有[]的情况下工作)

Thanx很多

试试看

values = new List<JsonOrderGanttValues> { new JsonOrderGanttValues(order) };
values=newlist{newjsonorderganttvalues(order)};

使用jquery遍历如下树

var obj = [{ "name": "DO NOT DELETE", "desc": "OB-2014-0202", "values": { "Status": 2, "from": "\/Date(1391295600000)\/", "to": "\/Date(1392505200000)\/", "customClass": null, "label": "DO NOT DELETE" } }];
console.log(obj[0].name);
console.log(obj[0].desc);
console.log(obj[0].values);
console.log(obj[0].values.Status);
console.log(obj[0].values.from);
console.log(obj[0].values.customClass);

按照现在的方式,值是一个对象。为了拥有[],需要将值设置为数组
var obj = [{ "name": "DO NOT DELETE", "desc": "OB-2014-0202", "values": { "Status": 2, "from": "\/Date(1391295600000)\/", "to": "\/Date(1392505200000)\/", "customClass": null, "label": "DO NOT DELETE" } }];
console.log(obj[0].name);
console.log(obj[0].desc);
console.log(obj[0].values);
console.log(obj[0].values.Status);
console.log(obj[0].values.from);
console.log(obj[0].values.customClass);