我正在使用SQLite PCL和Xamarin,在我的应用程序中,我必须从Web服务下载一个SQLite文件作为字节数组(byte []),并在我的应用程序中将此文件用作SQLite数据库。是否可以使用SQLite PCL做到这一点?
我正在尝试这样做,但我有SQLiteException:文件已加密或不是数据库
这是我尝试创建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>();
}
}
连接是create,但是当CreateTable执行时,app会抛出我提到的SQLiteExcpetion。
任何人都可以帮助我吗?
答案 0 :(得分:0)
据我所知,您只能从文件初始化SQLiteConnection。使用以下语法获取仅内存流以使用内存数据库的唯一方法:
var connection = new SQLiteConnection("Data source=:memory:");
但是,您无法初始化数据库,而这正是您要尝试的数据