一尘不染

如何在MVC4中将Json字符串作为JsonResult输出?

json

这看起来是如此简单,我必须对此加以考虑。

TL; DR;

如何修改下面的代码以返回字符串中包含的json对象,而不是恰好包含json的字符串?

public ActionResult Test()
{
  var json_string = "{ success: \"true\" }";
  return Json(json_string, JsonRequestBehavior.AllowGet);
}

此代码返回包含json的字符串文字:

"{ success: "true" }"

但是,我希望它返回字符串中包含的json:

{ success: "true" }

版本稍长

我正在尝试快速制作一些外部api调用的原型,而现在只是想将这些结果通过我的“ api”传递为假响应。json对象很简单-
大约10,000个“行”或90KB。我不想为此一个json响应的所有内容创建一个强类型对象,只是我可以通过反序列化器来运行它-这样就可以了。

因此,控制器中的基本逻辑是:

  1. 调用externall API
  2. 将Web请求的字符串结果存储到var中(请参见上面的json_string)
  3. 使用JsonResult产生方法Json()将这些结果输出为json(不是字符串)

非常感谢您的任何帮助。


阅读 181

收藏
2020-07-27

共1个答案

一尘不染

在整点Json()的helper方法是序列化JSON作为。

如果要返回原始内容,请直接执行以下操作:

return Content(jsonString, "application/json");
2020-07-27