web-dev-qa-db-ja.com

NewtonSoftでJSONオブジェクトを1行で生成します

JSONライブラリを使用しています NewtonSoft JSON文字列を生成します。

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

            return out.ToString();

出力:

{
  "typ": "photos"
}

私の質問:出力を次のような1行で取得することは可能ですか?

{"typ": "photos"}
53
Calimero

JObject.ToString() のオーバーロードを使用できます。これは、パラメーターとして Formatting を取ります。

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

return obj.ToString(Formatting.None);
74
tpeczek
var json = JsonConvert.SerializeObject(new { typ = "photos" }, Formatting.None);
57
L.B

文字列しか持っていないJSONを縮小する1行のライナーを次に示します。

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

出力:

{"type":"photos"}
5
DLeh

これがあなたの言っていることかどうかはわかりませんが、私はこれをしています::

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

編集:検索後、Json.Netで this を見つけました:

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

JObject o = JObject.Parse(json);

そして多分あなたは this ウェブサイトの情報を使うことができます。

しかし、出力が1行になるかどうかはわかりません...幸運を祈ります!

1
Quispie

MVCで外部ライブラリを使用したくない場合は、組み込みのSystem.Web.Script.Serialization.JavaScriptSerializer

そのためのライナーは次のとおりです。

var JsonString = new JavaScriptSerializer().Serialize(new { typ = "photos" });
0
Anup Sharma