【问题标题】:How to make a list of json objects?如何制作 json 对象的列表?
【发布时间】:2010-03-17 12:30:44
【问题描述】:

我正在使用 asp.net mvc2 并尝试从家庭控制器发送带有硬编码值的 json 对象列表,并在索引中接收它们...... 在下面的代码中,我发送了 1 个 json 对象 .... 我如何发送很多?

在家庭控制器中:

public ActionResult JsonValue()
        { 
            var result = new 
            { 
                pID = 1, 
                pName = "Lina",
                pStart = "",
                pEnd = "",
                pColor = "ff0000",
                pLink = "",
                pMile = 0,
                pRes = "Brian",
                pComp = 0,
                pGroup = 1,
                pParent = 0,
                pOpen = 1
            };


            return Json(result,JsonRequestBehavior.AllowGet);
        }

并像这样在索引中接收它:

        var Jid = null;
        var Jname = null;
        var Jstart = null;
        var Jend = null;
        var Jcolor = null;
        var Jlink = null;
        var Jmile = null;
        var Jres = null;
        var Jcomp = null;
        var Jgroup = null;
        var Jparent = null;
        var Jopen = null;
        var Jtitle = null;
        var g = new JSGantt.GanttChart('g', document.getElementById('GanttChartDIV'), 'day');
        $(document).ready(function () {

            $.getJSON('../../Home/JsonValue', function (data) {
                Jid = data.pID;
                Jname = data.pName;
                Jstart = data.pStart;
                Jend = data.pEnd;
                Jcolor = data.pColor;
                Jlink = data.pLink;
                Jmile = data.pMile;
                Jres = data.pRes;
                Jcomp = data.pComp;
                Jgroup = data.pGroup;
                Jparent = data.pParent;
                Jopen = data.pOpen;
                Jtitle = '|id= ' + Jid + '|Name: ' + Jname + '|Start: ' + Jstart + '|End: ' + Jend;

            }); // end $.getJSON

提前一百万谢谢... 丽娜

【问题讨论】:

    标签: javascript asp.net asp.net-mvc json


    【解决方案1】:

    将它们添加到数组并返回(当然是通过 JSON 调用)。

    我个人会创建一个类而不是你拥有的匿名对象,然后添加到一个通用列表中,一旦你填满了列表,你就可以将 list.ToArray() 传递给 Json 调用。我没有尝试过,但您可以将列表直接传递给 Json(我不确定它是否会从通用列表创建 Json 数组)。

    编辑,

    看起来 Json 会将任何可枚举转换为 Json 数组,所以我会说您可以将列表泛型列表传入,我稍后会添加一些代码

    下面添加的代码。

    我一分钟都不认为您应该亲自编写List<object>,正如我所解释的,我将为您的匿名对象创建一个类,以便您可以强输入它。希望这会给你一个想法

    public ActionResult JsonValue()
            {
                List<object> jsonlist = new List<object>();
                jsonlist.Add(new
                {
                    pID = 1,
                    pName = "Lina",
                    pStart = "",
                    pEnd = "",
                    pColor = "ff0000",
                    pLink = "",
                    pMile = 0,
                    pRes = "Brian",
                    pComp = 0,
                    pGroup = 1,
                    pParent = 0,
                    pOpen = 1
                });
    
                jsonlist.Add(new
                {
                    pID = 1,
                    pName = "Lina",
                    pStart = "",
                    pEnd = "",
                    pColor = "ff0000",
                    pLink = "",
                    pMile = 0,
                    pRes = "Brian",
                    pComp = 0,
                    pGroup = 1,
                    pParent = 0,
                    pOpen = 1
                });
    
                return Json(jsonlist,JsonRequestBehavior.AllowGet);
            }
    

    【讨论】:

      猜你喜欢
      • 2023-02-16
      • 1970-01-01
      • 2017-06-29
      • 1970-01-01
      • 2017-09-27
      • 2014-10-15
      • 2017-08-19
      • 2017-10-01
      • 1970-01-01
      相关资源
      最近更新 更多