问题描述
我在 Xamarin.Forms 应用程序中使用 sqlite-Net-Pcl,我为我的所有数据库方法创建了一个单例 dataStore 类。创建 sqliteConnection 的最佳实践是什么?您的类上是否应该有一个私有的只读连接对象并在您的所有数据库操作中使用它。或者你应该在每种方法中使用创建一个新的 sqliteConnection 吗?我还应该在我的数据库代码周围使用 lock() 语句吗?
lock(lockerObj)
{
// db code
}
解决方法
这在很大程度上取决于数据的性质和应用程序的性质/复杂性。
对我们来说,我们在使用单个连接和使用 lock 语句来帮助确保对数据库进行序列化更新时没有遇到任何问题。这是最容易实现和管理的,因为您不需要关心 connection isolation。
但这不是一刀切的解决方案。