我正在开发一个具有二进制文件格式的 .NET (C#) 应用程序。计划是将二进制格式迁移到更易于维护的 SQLite 数据库文件。
我以前从未使用过这个,所以我有几个问题。
http://sqlite.phxsoftware.com/的 SQLite 实现包含一个 LINQ 提供程序。我在本地玩过它,但我必须以某种方式将它合并到开发团队可以使用的东西中。我可以将我的 PC 上的数据库文件放在源存储库中包含的文件夹中,但最终它应该放在客户端 AppData 文件夹中。如何使用生成的数据库文件来实现这一点?当我手动创建数据库文件时,我可以很容易地告诉应用程序将它存储在哪里。
我对 SQL 查询有相当了解,所以我最初的计划是创建一个库,它使用 SQL 查询将 DataModel 移植到数据库。这样做的缺点是,当一个字段更改或添加时,我必须更新很多东西:数据库创建查询、数据库更新或更改查询、DataModel。根据我收集的信息,我可以使用设计器创建一个数据库,但是当我的应用程序下个月更新到版本 2 并且我的数据库发生更改时,我想将用户的现有数据库迁移到新版本。手动执行此操作我可以编写更新查询并使用某种增量数据库计数器来检查这一点,但是使用生成的数据库如何工作?
那么直接使用 SQL 查询是否更好、更容易、更安全,或者有人可以指出我使用生成的数据库的一个不错的可用用例吗?
谢谢。