[英]How to take a list of Objects and create a JSON of specific properties of the objects in the list?
[英]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.