Dites à json .net d’écrire un guillemet simple plutôt qu’un guillemet double lors de la sérialisation d’objects

Lorsque Newtonsoft.Json.JsonConvert.SerializeObject(myObject) clés et les valeurs sont Newtonsoft.Json.JsonConvert.SerializeObject(myObject) entre guillemets:

{"key" : "value"}

Je voudrais qu’ils soient entre guillemets simples comme ceci:

{'key' : 'value'}

Est-il possible d’utiliser Json .Net?

Oui, c’est possible Si vous utilisez explicitement un JsonTextWriter au lieu d’utiliser JsonConvert.SerializeObject() , vous pouvez définir QuoteChar sur un seul devis.

 var obj = new { key = "value" }; SsortingngBuilder sb = new SsortingngBuilder(); using (SsortingngWriter sw = new SsortingngWriter(sb)) using (JsonTextWriter writer = new JsonTextWriter(sw)) { writer.QuoteChar = '\''; JsonSerializer ser = new JsonSerializer(); ser.Serialize(writer, obj); } Console.WriteLine(sb.ToSsortingng()); 

Sortie:

 {'key':'value'} 

Violon: https://dotnetfiddle.net/LGRl1k

N’oubliez pas que l’utilisation de guillemets simples autour des clés et des valeurs dans JSON est considérée comme non standard (voir JSON.org ) et peut entraîner des problèmes pour les parsingurs syntaxiques qui adhèrent ssortingctement à la norme.