簡體   English   中英

如何制作json對象列表?

[英]How to make a list of json objects?

我正在使用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

預先感謝一百萬...麗娜

將它們添加到數組中並返回該數組(當然是通過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);
        }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM