web-dev-qa-db-ja.com

Json.NetとActionResult

自分で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); //???????
}
22
NeatNerd

アクションメソッドでこれを行うことができるはずです。

return Content( res.ToString(), "application/json" );
37
Craig W.

念のため、JSON Formattingを処理する場合は、単に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;
}

else組み込みの JsonResult (ActionResult)を使用

    public JsonResult Test(string id)
    {

          return Json(objectToConvert);
    }
5