Buona giornata!Serializzazione Json .NET - modifica il valore della proprietà
Attualmente sto usando il Newtonsoft JSON Serializzatore attraverso il seguente codice:
private string serializeAndIgnoreEmail(UserMembership obj)
{
var json = JsonConvert.SerializeObject(obj, Formatting.Indented,
new JsonSerializerSettings() { ContractResolver = new DocumentIdContractResolver() });
return json;
}
private class DocumentIdContractResolver : CamelCasePropertyNamesContractResolver
{
protected override List<MemberInfo> GetSerializableMembers(Type objectType)
{
return base.GetSerializableMembers(objectType).Where(o => o.Name != "Email").ToList();
}
}
Ogni volta che ho bisogno di serializzare un oggetto chiamo il metodo 'serializeAndIgnoreEmail'. Ora voglio sostituire il contenuto di ogni proprietà con la sua versione crittografata e non so dove farlo.
La mia ipotesi sarebbe quella di sovrascrivere un metodo nel "DocumentIdContractResolver", ma ci sono così tanti CreateBlahBlahBlah, che trovo molto difficile lavorare con loro.
È questo l'approccio giusto, per continuare a modificare ContractResolver o devo provare qualcos'altro?
Grazie!