在 Xamarin.Mac 中使用 SQLite-Net 扩展和 SQLiteConnection

Using SQLite-Net Extensions and SQLiteConnection in Xamarin.Mac

我想知道,如何在 Xamarin.Mac 项目中使用 SQLite-Net Extensions

我正在使用 Xamarin Studio 5.9.5,我从 Mac->App->Empty project (Unified API) 创建了项目。已安装的包 SQLite-Net Extensions。这是我的代码的开头:

        var db = new SQLiteConnection(???????, dbPath);
        db.CreateTable<Stock>();
        db.CreateTable<Valuation>();

如何调用 SQLiteConnection 构造函数?我需要 sqlite 平台作为第一个参数,但是没有 SQLite.Net.Platform. dll 添加到引用中。

answer is not helpful, because there are no such dlls/namespaces (SQLite.Net.Platform). Also I can't find this 包 - SQLite.Net.Platform.XamarinIOS.

我想使用 SQLite-Net Extensions 因为它是一对一、一对多.. 关系。我的问题是 如何创建 SQLiteConnection 的实例?

为什么那个包的引用中没有 SQLite.Net.Platform.GenericSQLite.Net.Platform.Win32 dll?

问题出在我选择的项目类型上。我选择 Empty project 以新 Unified API 为目标。对于该项目 SQLiteNetExtensions 包没有必需的库,例如 SQLite.Net.Platform.Generic

要解决该问题,您可以选择以 Classic API 为目标的项目(对于该项目 SQLiteNetExtensions 包含 SQLite.Net.Platform)或创建 Unified API 项目并在添加 SQLiteNetExtensions 包,手动添加 SQLite.Net.Platform dll 到引用。

不过,我不确定为什么这些 .Platform 库包含在 Classic APISQLiteNetExtensions 包中,而不是 Unified API

在我的项目中它是这样工作的:

dbConnection = new SQLiteConnection(new SQLite.Net.Platform.Generic.SQLitePlatformGeneric(), databasePath);