einen JSON-String wie folgt Unter der Annahme:eine Transformation auf einem Json DeserializeObject für eine Eigenschaft läuft
string json = '{"string_property":"foo_bar", ... other objects here ...}';
ich mich gefragt, ob es einen Weg gibt, um eine Transformation auf dem analysierten Objekt auszuführen, dass anstelle foo_bar
zu bekommen, ich werde foo bar
erhalten nach der folgenden Methode ausgeführt (kann wirklich alles sein)
public string Transform(string s) {
return s.Replace("_"," ");
}
ich manuell mein poco nach Deserialisieren verändern kann, aber fragte sich, was ein wäre "sauberer" Ansatz?
Blick auf http://www.newtonsoft.com/json/help/html/CustomJsonConverter.htm –
Versuchen Sie, auch Ihre Eigenschaftsnamen oder nur die Werte zu transformieren? Und wollen Sie die gleiche Transformation für alle Eigenschaften –
Sofern Sie nicht Ihre Eigenschaftsnamen ändern müssen und Sie die gleiche Transformation für alle String-Eigenschaften wollen, wäre der sauberste Ansatz zunächst die Deserialize und dann die Werte aller String-Eigenschaften durch Reflexion zu transformieren. –