Actualmente estoy trabajando en una aplicación WPF tipo Paint y ahora me paro ante el problema de cómo habilito a mis usuarios para guardar las imágenes creadas. Normalmente, simplemente los guardo en el disco, pero en esta aplicación tengo el requisito de permitir al usuario crear más "imágenes" de las ya creadas. Esto todavía no sería un problema con un enfoque de sistema de archivos normal, pero el usuario también debería ser capaz de buscar imágenes por propiedades específicas como categorías/etiquetas, etc. y eso sería difícil con un enfoque de sistema de archivos normal.C#: Base de datos interna de archivo en la aplicación
Así que pensé en algunas opciones que tengo para darme cuenta de lo que quiero y ahora me gustaría saber qué piensas de los enfoques o si incluso conoces uno mejor. Los enfoques son:
- Almacenamiento de imágenes en una base de datos interna de la aplicación (a través de SQLite o algo similar)
- Almacenamiento de imágenes como archivos normales en el sistema de archivos y mantener una base de datos en la aplicación para hacer referencia a estas imágenes (lo que sucede si las imágenes fueron borrados por el usuario?)
- Almacenamiento de imágenes como archivos normales en el sistema de archivos de base de datos sin extra en la aplicación (es difícil de filtrar por categorías, etc.)
Gracias!
FileSystemWatcher tiene algunas limitaciones cuando se agregan/eliminan grandes cantidades de archivos al mismo tiempo, aunque si solo se agregan o eliminan uno o dos archivos a la vez, debería estar bien. – ChrisF