当我更新我的数据时:
using (SQLiteConnection conn = new SQLiteConnection(DB_PATH))
{
var query = conn.Table<kursy>().Where(k => k.kurs == kursStaryRubel).SingleOrDefault();
query.data = kursAktualnyData;
query.kurs = kursAktualnyRubel;
conn.Update(query);
}
一切正常。数据已更新。但是当我再次关闭并打开我的应用程序时,这些数据具有旧值 - 它没有更新。我正在使用相同的数据库,它没有重新创建。为什么会这样?
我的DB_PATH:
public static string DB_PATH = Path.Combine(ApplicationData.Current.LocalFolder.Path, "test.db");
我的数据库文件将属性Copy to Output Directory
设置为Copy if Newer
答案 0 :(得分:0)
我已经解决了这个问题。
无意识地数据库在开始时被替换。问题是我在Storage
而不是IsolatedStorage
中创建了数据库。我不知道我是否理解这一点,但是当它在Storage中创建时,数据库是在应用程序的内存中创建的,这就是我关闭应用程序时数据库到期的原因。但是当我在IsolatedStorage中创建数据库时,它永久地放在手机内存中。然后,即使我关闭了应用程序,数据库仍然存在,因为它是在手机内存中创建的,而不是在应用程序内存中。