如何从异步PCL版本的SQLite中使用SQLiteAsyncConnection?

我正在使用来自https://github.com/oysteinkrog/SQLite.Net-PCL的PCL版本的Sqlite.net

但是,我无法获得数据库连接设置。 与原始版本不同, SQliteAsyncConnection不采用字符串(DB的路径),而是[Func.] 2

怎么用呢? 一般来说:如何使用这个库? 我有一个核心PCL lib,可以完成iOS,Android和WP8项目的所有业务逻辑。 我的理解是我可以将Sqlite-Net Async PCL放入我的PCL lib中。 但似乎我必须提供一些特定于平台的东西才能让它发挥作用。

您只需要创建一个返回SQLiteConnectionWithLock的函数,并将其传递给SQLiteAsyncConnection构造函数。

 string databasePath = "path"; var connectionFactory = new Func(()=>new SQLiteConnectionWithLock(new SQLitePlatformWinRT(), new SQLiteConnectionString(databasePath, storeDateTimeAsTicks: false))); var asyncConnection = new SQLiteAsyncConnection(connectionFactory); 

我也有这个问题。 为了满足Johnbot的答案,我正在添加如何使用这个库并使其工作。 我真的不了解NuGet包,所以我手动完成了。

  1. 下载项目https://github.com/oysteinkrog/SQLite.Net-PCL

  2. 在VS2015中加载解决方案,设置为发布模式并为以下内容创建dll:

a)SQLite.Net

b)SQLite.Net.Async

c)SQLite.Net.Platform.WinRT,适用于Windows 10通用应用程序或您需要的平台。

确保您的项目中包含这些引用。

引用

从VS Tools / Extensions和Updates安装SQLIte for Universal App。 安装后,它将在Universal Windows / Extensions下引用,同时还需要Visual C ++ 2015。

祝好运!