I'm using a PCL version of Sqlite.net from https://github.com/oysteinkrog/SQLite.Net-PCL
However, I'm unable to get the DB connection setup. The SQliteAsyncConnection
does unlike the original version not take a string (path to the DB), but a [Func< SQLiteConnectionWithLock>.]
2
How can this be used?
In general: how to use this library? I have a core PCL lib which does all the business logic from my iOS, Android and WP8 projects. My understanding was that I can drop the the Sqlite-Net Async PCL into my PCL lib. But it seems like I have to provide some platform specific stuff to get it to work.
You just need to create a function that returns a SQLiteConnectionWithLock
and pass that to the SQLiteAsyncConnection
constructor.
string databasePath = "path";
var connectionFactory = new Func<SQLiteConnectionWithLock>(()=>new SQLiteConnectionWithLock(new SQLitePlatformWinRT(), new SQLiteConnectionString(databasePath, storeDateTimeAsTicks: false)));
var asyncConnection = new SQLiteAsyncConnection(connectionFactory);
I've had problems with this too. To meet Johnbot's answer which is correct I am adding how I have used this library and got it to work. I did not really understand the NuGet packages, so I did it manually.
Download the project
https://github.com/oysteinkrog/SQLite.Net-PCL
Load the solution in VS2015, set to release mode and create the dlls for:
a) SQLite.Net
b) SQLite.Net.Async
c) SQLite.Net.Platform.WinRT which is for Windows 10 universal apps, or the platform you need.
Ensure you have these references in your project.
![](https://www.manongdao.com/static/images/pcload.jpg)
SQLIte for Universal App is installed from VS Tools / Extensions and Updates. Once installed it is referenced under Universal Windows / Extensions along with the Visual C++ 2015 which is also required.
Good luck!