Vous pouvez spécifier JsonSerializerSettings
pour chaque JsonConvert
et vous pouvez définir une valeur par défaut globale.
Simple JsonConvert
avec une surcharge :
// Option #1.
JsonSerializerSettings config = new JsonSerializerSettings { ReferenceLoopHandling = Newtonsoft.Json.ReferenceLoopHandling.Ignore };
this.json = JsonConvert.SerializeObject(YourObject, Formatting.Indented, config);
// Option #2 (inline).
JsonConvert.SerializeObject(YourObject, Formatting.Indented,
new JsonSerializerSettings() {
ReferenceLoopHandling = Newtonsoft.Json.ReferenceLoopHandling.Ignore
}
);
Réglage global avec le code dans Application_Start()
dans Global.asax.cs :
JsonConvert.DefaultSettings = () => new JsonSerializerSettings {
Formatting = Newtonsoft.Json.Formatting.Indented,
ReferenceLoopHandling = Newtonsoft.Json.ReferenceLoopHandling.Ignore
};
Référence : https://github.com/JamesNK/Newtonsoft.Json/issues/78