Ich verwende die JSON-Bibliothek NewtonSoft , um einen JSON-String zu generieren:
JObject out = JObject.FromObject(new
{
typ = "photos"
});
return out.ToString();
Ausgabe:
{
"typ": "photos"
}
Meine Frage: Ist es möglich, die Ausgabe in einer einzelnen Zeile zu erhalten, wie:
{"typ": "photos"}
Sie können die Überladung von JObject.ToString()
verwenden, die Formatting
als Parameter verwendet:
JObject obj = JObject.FromObject(new
{
typ = "photos"
});
return obj.ToString(Formatting.None);
var json = JsonConvert.SerializeObject(new { typ = "photos" }, Formatting.None);
Hier ist ein One-Liner, um JSON zu minimieren, für den Sie nur eine Zeichenfolge haben:
var myJson = "{\"type\" :\"photos\" }";
JObject.Parse(myJson).ToString(Newtonsoft.Json.Formatting.None)
Ausgabe:
{"type":"photos"}
Ich bin mir nicht sicher, ob Sie das meinen, aber was ich tue ist folgendes:
string postData = "{\"typ\":\"photos\"}";
BEARBEITEN: Nach der Suche habe ich this in Json.Net gefunden:
string json = @"{
CPU: 'Intel',
Drives: [
'DVD read/writer',
'500 gigabyte hard drive'
]
}";
JObject o = JObject.Parse(json);
und vielleicht könnten Sie die Informationen auf this website verwenden.
Ich bin mir jedoch nicht sicher, ob die Ausgabe in einer Zeile erfolgen wird ... Viel Glück!
Wenn jemand hier keine externe Bibliothek in MVC verwenden möchte, kann er den eingebauten System.Web.Script.Serialization.JavaScriptSerializer
verwenden.
Ein Liner dafür wird sein:
var JsonString = new JavaScriptSerializer().Serialize(new { typ = "photos" });