我自己构建一个JObject并希望将其作为ActionResult返回。我不想创建然后序列化数据对象
例如
public ActionResult Test(string id)
{
var res = new JObject();
JArray array = new JArray();
array.Add("Manual text");
array.Add(new DateTime(2000, 5, 23));
res["id"] = 1;
res["result"] = array;
return Json(res); //???????
}
答案 0 :(得分:36)
你应该能够在你的行动方法中做到这一点:
return Content( res.ToString(), "application/json" );
答案 1 :(得分:4)
如果你负责JSON格式化,只需要return JSON Formatted string
public string Test(string id)
{
var res = new JObject();
JArray array = new JArray();
array.Add("Manual text");
array.Add(new DateTime(2000, 5, 23));
res["id"] = 1;
res["result"] = array;
return YourJSONSerializedString;
}
否则使用内置JsonResult(ActionResult)
public JsonResult Test(string id)
{
return Json(objectToConvert);
}