65

我正在使用 JSON 库NewtonSoft生成 JSON 字符串:

JObject out = JObject.FromObject(new
            {
                typ = "photos"
            });

            return out.ToString();

输出:

{
  "typ": "photos"
}

我的问题:是否可以在一行中获得输出,例如:

{"typ": "photos"}
4

5 回答 5

85

JObject.ToString()您可以使用Formatting作为参数的重载:

JObject obj = JObject.FromObject(new
{
    typ = "photos"
});

return obj.ToString(Formatting.None);
于 2012-12-17T15:52:11.980 回答
76
var json = JsonConvert.SerializeObject(new { typ = "photos" }, Formatting.None);
于 2012-12-17T15:43:55.137 回答
15

这是一个缩小 JSON 的单行程序,您只有一个字符串:

var myJson = "{\"type\"    :\"photos\"               }";
JObject.Parse(myJson).ToString(Newtonsoft.Json.Formatting.None)

输出:

{"type":"photos"}
于 2018-03-29T05:29:30.993 回答
1

我不确定这是否是您的意思,但我所做的是:

string postData = "{\"typ\":\"photos\"}";

编辑:搜索后我在 Json.Net 上找到了这个:

string json = @"{
  CPU: 'Intel',
  Drives: [
    'DVD read/writer',
    '500 gigabyte hard drive'
  ]
}";

JObject o = JObject.Parse(json);

也许你可以使用这个网站上的信息。

但我不确定,如果输出会在一行上......祝你好运!

于 2012-12-17T15:44:49.253 回答
0

如果这里有人不想在 MVC 中使用任何外部库,他们可以使用内置的System.Web.Script.Serialization.JavaScriptSerializer

一个衬里将是:

var JsonString = new JavaScriptSerializer().Serialize(new { typ = "photos" });
于 2017-05-11T11:58:06.543 回答