我不完全确定如何定义这个问题,但基本上我正在开发一个 ASP.Net 应用程序,我在其中生成一个名为 IndexJson
的 JsonResult
。
我的代码如下:
public JsonResult IndexJson()
{
var contacts = (from x in db.ContactSet
select new
{
x.AccountId,
x.FirstName,
x.LastName,
x.FullName,
x.JobTitle,
x.ParentCustomerId,
x.EMailAddress1,
x.Telephone1,
x.MobilePhone,
x.Fax,
x.GenderCode,
x.BirthDate
}).ToList();
return Json(contacts, JsonRequestBehavior.AllowGet);
}
这很适合返回以下 JSON:
[{/*contact info*/}, {/*contact info*/}, {/*contact info*/}, ...]
但现在我想返回以下 JSON(现在是硬编码的,我稍后会更改值):
{
"current": 1,
"rowCount": 10,
"rows": [{/*contact info*/}, {/*contact info*/}, {/*contact info*/}, ...],
"total": 1123
}
我怎样才能调整我的代码来做到这一点?
简单地将所有包装成新的匿名对象
return Json(new { current = 1, rowCount = 10, rows = contacts, total = 1123 },
JsonRequestBehavior.AllowGet
);
我是一名优秀的程序员,十分优秀!