0

enter image description hereКак экспортировать SQLite файл в корневом каталоге приложения в Windows Phone

Привет мой файл Sqlite находится в корневом каталоге приложения. Когда я использую изолированном приспособление EXPLORER

ISETool.exe ерей f8ce6878-0aeb-XD 497f-bcf4-65be961d4bba с: \ Data \ MyFiles

Я не заразились Notes_DB.sqlite в изолирует хранения.

Как coudld Я получаю модифицированный файл sqlite в эмуляторе.

Заранее спасибо.

ответ

1

Изолированный проводник для хранилища делает именно то, что он говорит, перечисляет файлы в изолированном хранилище. Когда вы добавляете файл в XAP, он находится в папке установки, а не в изолированном хранилище.

Вы можете использовать следующий код, чтобы скопировать файл из папки установки в IsolatedStorage (модифицированной из этого примера http://msdn.microsoft.com/en-us/library/windowsphone/develop/hh202978(v=vs.105).aspx)

private void CopyFileToStorage() 
{ 
    using (IsolatedStorageFile storage = IsolatedStorageFile.GetUserStoreForApplication()) 
    { 
     if (!storage.FileExists("Notes_DB.sqlite")) 
     { 
      // Open the file from the XAP 
      StreamResourceInfo resource = Application.GetResourceStream(new Uri("Notes_DB.sqlite", UriKind.Relative)); 

      using (IsolatedStorageFileStream file = storage.CreateFile("Notes_DB.sqlite")) 
      { 
       int chunkSize = 4096; 
       byte[] bytes = new byte[chunkSize]; 
       int byteCount; 

       while ((byteCount = resource.Stream.Read(bytes, 0, chunkSize)) > 0) 
       { 
        file.Write(bytes, 0, byteCount); 
       } 
      } 
      } 
    } 
} 
+0

Спасибо вам Давида. Этот код работает для меня –