Ho una stringa che rappresenta JSON e voglio rinominare alcune proprietà usando JSON.NET. Ho bisogno di una funzione generica da usare per qualsiasi JSON. Qualcosa di simile:Json.net rinomina proprietà
public static void Rename(JContainer container, Dictiontionary<string, string> mapping)
{
foreach (JToken el in container.Children())
{
JProperty p = el as JProperty;
if(el != null && mapping.ContainsKey(p.Name))
{
// **RENAME THIS NODE!!**
}
// recursively rename nodes
JContainer pcont = el as JContainer;
if(pcont != null)
{
Rename(pcont, mapping);
}
}
}
Come fare ??
Grazie Dmitry, questo è perfetto! –
Ci possono essere alcuni bug minori, ma puoi correggerli tu stesso se ne trovi uno :) –