Могу ли я преобразовать строку JSON в JsonResult?

У меня есть некоторые сохраненные строки JSON, хранящиеся в БД, которые я хочу вернуть клиенту как JsonResult . Я знаю, что Json(object) превращает объект в JsonResult, но что, если у меня уже есть результат в виде строки? могу ли я привести его к JsonResult


person xantrus    schedule 21.04.2010    source источник


Ответы (1)


Вам не нужно возвращать JsonResult, потому что его задача — сериализовать объект в строку JSON. У вас уже есть строка JSON, поэтому просто верните ее в ContentResult и укажите правильный тип содержимого:

string json = //get some json from your DB
return new ContentResult { Content = json, ContentType = "application/json" };

Помните, что все ваши методы действий MVC должны иметь тип возвращаемого значения ActionResult, поэтому вы можете возвращать ContentResult так же легко, как JsonResult.

person Erv Walter    schedule 21.04.2010
comment
Существует также метод Content, аналогичный методу Json, поэтому вы можете написать return Content(json, "application/json");. - person Kylar; 22.09.2012