¿Cuáles son las mejores prácticas para almacenar y mantener objetos serializados en C #? ¿Alguna estrategia o patrón que aplique?
Lo que he llegado a creer hasta ahora es esto:
- Prefiero Json sobre XML, tanto por espacio como por velocidad, pero xml es más fácil de consultar / extraer datos a través de LINQ to XML para conjuntos de datos más grandes.
- Para cada propiedad individual, asigne explícitamente a un nombre serializado. En el futuro, cuando necesite cambiar el nombre de una propiedad, sus datos serializados no se romperán. Los atributos ayudan con esto.
- Almacene algún tipo de información de versión en el objeto serializado, en caso de que necesite migrar datos en masa en el futuro
Actualización: (que descubrí por las malas)
- Almacene todas las fechas de manera uniforme en toda la aplicación y en todas las versiones. Tanto en formato como en zona horaria.