我正在使用 mvc 4 web api 构建一个始终返回 JSON 的服务层。
我的 api 方法调用实际上调用了另一个返回 JSON 对象的服务。然后我只想将这个 JSON 对象作为我的返回对象传回,但我不确定要使用什么返回类型。
如果我使用字符串,它会将 JSON 对象用引号引起来。
顺便说一句,我已经将默认的 MediaTypeFormatter 更改为 JSON。
这是 JSON 对象的示例:
{
"responseHeader":{
"status":0,
"QTime":0,
"params":{
"indent":"on",
"q":"id:100001",
"wt":"json"}},
"response":{"numFound":1,"start":0,"docs":[
{
"Header":"Test Header",
"MaxPrice":515.0,
"ApartmentName":"Apartment 1",
"MaxBathrooms":4.0,
"Pool":true,
"MinBathrooms":2.0,
"MaxBedrooms":4,
"CoveredParking":false}]
}}
最佳答案
在 Beta 版中,您可以使用 JsonValue
(来自 System.Json 命名空间)。如果您对其他服务的调用返回了一个包含 JSON 数据的字符串,那么您可以调用 JsonValue.Parse
将其加载到要返回的对象中。
在 RC 版本(或来自 http://aspnetwebstack.codeplex.com 的当前位)中,您可以使用 JToken
对象(来自 Newtonsoft.Json.Linq 命名空间)——默认的 JSON 序列化程序和 JSON DOM 是现在来自 JSON.NET 库。
关于c# MVC 4 Web API - 从 JSON 字符串返回对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10522168/