Могу ли я преобразовать строку JSON в JsonResult? - PullRequest
56 голосов
/ 21 апреля 2010

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

Ответы [ 2 ]

120 голосов
/ 21 апреля 2010

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

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

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

5 голосов
/ 21 апреля 2010

Вы можете вернуть строку клиенту, а затем использовать $. ParseJSON () (jquery), чтобы проанализировать ее в реальном объекте json.

...