使用NewtonSoft在一行中生成JSON对象

Cal*_*ero 55 c# json json.net

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

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

            return out.ToString();
Run Code Online (Sandbox Code Playgroud)

输出:

{
  "typ": "photos"
}
Run Code Online (Sandbox Code Playgroud)

我的问题:是否有可能将输出放在一行中,如:

{"typ": "photos"}
Run Code Online (Sandbox Code Playgroud)

tpe*_*zek 76

您可以使用的过载JObject.ToString()这需要Formatting作为参数:

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

return obj.ToString(Formatting.None);
Run Code Online (Sandbox Code Playgroud)

  • 这是最简单的解决方案,并且完美运行. (3认同)

L.B*_*L.B 59

var json = JsonConvert.SerializeObject(new { typ = "photos" }, Formatting.None);
Run Code Online (Sandbox Code Playgroud)

  • 这是我的风格 :) (2认同)
  • 这是最干净的解决方案(和答案) (2认同)

DLe*_*Leh 6

这是简化JSON的一种方法,即您只有一个字符串用于:

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

输出:

{"type":"photos"}
Run Code Online (Sandbox Code Playgroud)