2016-11-16 8 views
0

Я использую SQLite PCL с Xamarin, и в моем приложении мне пришлось загрузить SQLite-файл в виде байтового массива (byte []) из веб-службы и использовать этот файл в моем приложении в качестве базы данных SQLite. Можно ли это сделать с помощью SQLite PCL?SQLite PCL - SQLite.SQLiteException: файл зашифрован или не является базой данных

Я пытаюсь сделать это, но я был SQLiteException: файл шифруется или не является базой данных

Это класс, который я tryng создать SQLite:

public abstract class BaseLocalDao<POCO, Entity> : ILocalDao<POCO, Entity> where POCO : class, IPOCO where Entity : class, IEntity, new() 
    { 
     protected IConverter<POCO, Entity> _converter; 
     protected readonly SQLiteConnection _dataBase; 

     public BaseLocalDao() 
     { 
      var controleArquivoBanco = Mvx.Resolve<IControleArquivoBanco>(); 

      _dataBase = new SQLiteConnection(controleArquivoBanco.GetPath());   
      _dataBase.CreateTable<Entity>(); 
     } 
} 

Соединение создается, но когда выполняется CreateTable, приложение бросает SQLiteExcpetion, о котором я упоминал.

Может ли кто-нибудь мне помочь?

ответ

0

Насколько я знаю, вы можете инициализировать SQLiteConnection из файла. Единственный способ получить память только поток, чтобы использовать базу данных в оперативной памяти, используя следующий синтаксис:

var connection = new SQLiteConnection("Data source=:memory:"); 

Однако вы не можете инициализировать базу данных о данных, является то, что вы пытаетесь сделать

+0

I 'Не пытаюсь прочитать файл, который я создал. Я читаю SQLite-файл, созданный веб-сервисом. Я читаю SQLite-файл из веб-службы в виде байта [], пишу в папку в android, но когда я вызываю метод CreateTable, у меня есть excpetion. –

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

  • Нет связанных вопросов^_^