2010-03-17 37 views
0

我正在使用asp.net mvc2並嘗試從家庭控制器發送硬編碼值的json對象列表,並在索引中接收它們。 下面的代碼中我發送1個json對象。 ... 我如何發送很多?如何製作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 

提前一百萬...... 麗娜

回答

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); 
     }