2015-02-27 2 views
0

Когда я обновить мои данные:SQLite теряет данные (вставка, обновление) после перезапуска приложения

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

@Steve, спасибо за ваш повтор. 'public static string DB_PATH = Path.Combine (ApplicationData.Current.LocalFolder.Path," test.db ");'. Моя база данных 'test.db' создается только один раз - когда база данных не существует в моем StorageFile моего WP. Затем мое приложение всегда использует эту базу данных, которая находится в моем WP. Поэтому я не знаю, почему он потерял данные после перезагрузки ... – XardasLord

+0

Нет, я не заметил тег WinPhone, этот ответ не относится к вам. – Steve

ответ

0

Я решил эту проблему.

Бессознательная база данных была заменена в начале. Проблема заключалась в том, что я создал базу данных в Storage, а не в IsolatedStorage. Я не знаю, понимаю ли я это правильно, но когда он был создан в Storage, база данных была создана в памяти приложения, и поэтому база данных заканчивается при закрытии приложения. Но когда я создаю базу данных в IsolStorage, она постоянно помещается в память телефона. И тогда, даже если я отключу приложение, база данных осталась, потому что она была создана в памяти телефона, а не в памяти приложения.

Смежные вопросы