当前Entity Framework Core Documentation给出了在 Windows 10/UWP 应用程序中使用 SQLite 的示例。给出的示例使用 optionsBuilder.UseSqlite("Filename=Blogging.db");
声明数据库位置该路径相当于 Windows.Storage.ApplicationData.Current.LocalFolder.Path
这会将 SQLite 数据库置于 <packagefolder>\LocalState
.
我们正在探索将 UWP/SQLite 用于业务应用程序,该应用程序将业务事务存储在 SQLite 数据库中。但是文件夹名称LocalState
对我来说,这是存储状态信息的地方,而不是长期存储业务交易的地方。
还有另一个文件夹<packagefolder>\AppData
。这是我们数据库更合适的位置吗?如果是,如何在 UWP 应用中访问它?或者是<packagefolder>\LocalState
毕竟,放置用于长期存储业务事务的数据库的正确位置是什么?
最佳答案
文档是正确的。数据库的路径 (Windows.Storage.ApplicationData.Current.LocalFolder.Path) 正确。只要设备上安装了应用程序,您的数据就会存在。
请参阅下面的 MSDN 文章以及其中最重要的内容:
“本地数据,只要创建它的应用程序保持安装状态就存在”
还有一个:
“本地可以包含文件 (LocalFolder) 和设置 (LocalSettings),并且应用于对用户有值(value)且不易重新创建或下载的任何信息”
ApplicationData.Current.LocalFolder 用于存储信息。
https://blogs.windows.com/buildingapps/2016/05/10/getting-started-storing-app-data-locally/#_Local
关于entity-framework - SQLite 数据库放置在 UWP 应用中的位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37760088/