C#:应用程序中的内部文件数据库

chr*_*chu 5 c# database wpf file

我目前正在开发类似Paint的WPF应用程序,现在站在问题之前我如何让我的用户保存创建的图像.通常我会将它们保存到磁盘,但在此应用程序中,我要求以后允许用户从已创建的"图像"中创建更大的"图像".对于普通的文件系统方法,这仍然没有问题,但是用户还应该能够通过类别/标签等特定属性搜索图像,并且使用普通的文件系统方法会很困难.

所以我想到了我实现我想要的一些选择,现在想知道你对这些方法的看法,或者你是否知道更好的方法.方法是:

  • 将图像保存在应用程序的内部数据库中(通过SQLite或类似的东西)
  • 将图像保存为文件系统中的普通文件,并将数据库保留在应用程序中以引用这些图像(如果用户删除了图像,会发生什么情况?)
  • 将图像保存为文件系统中的普通文件,而无需在应用程序中使用额外的数据库(很难按类别等过滤它们)

谢谢!

Dav*_*fer 1

许多程序(例如 Aperture、Lightroom、Expression Media 等)将其图像存储到磁盘,然后在数据库中维护元数据缓存。对于您的应用程序来说,这似乎是最明智的方法。