Quais são as práticas recomendadas para armazenar e manter objetos serializados em C #? Alguma estratégia ou padrão que se aplique?
O que eu acredito até agora é o seguinte:
- Prefira Json sobre XML, tanto por espaço quanto por velocidade, mas é mais fácil consultar xml / extrair dados via LINQ to XML para conjuntos de dados maiores.
- Para cada propriedade, mapeie explicitamente para um nome serializado. No futuro, quando você precisar renomear uma propriedade, seus dados serializados não serão interrompidos. Atributos ajudam com isso.
- Armazene algum tipo de informação de versão no objeto serializado, caso você precise migrar dados em massa no futuro
Atualização: (que eu descobri da maneira mais difícil)
- Armazene todas as datas de maneira uniforme em todo o aplicativo e em todas as versões. Tanto em relação ao formato quanto ao fuso horário.