Using SQLite-Net Extensions and SQLiteConnection in Xamarin.Mac

为君一笑 提交于 2019-12-04 10:41:50

问题


I'd like to know, how can I use SQLite-Net Extensions within Xamarin.Mac project?

I'm using Xamarin Studio 5.9.5, I've created project from Mac->App->Empty project (Unified API). Installed package SQLite-Net Extensions. Here is the beginning of my code:

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

How can I call SQLiteConnection constructor? I need sqlite platform as first parameter, but there are no SQLite.Net.Platform. dlls added to references.

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

I want to use SQLite-Net Extensions because of its one-to-one, one-to-many.. relationships. My question is How can I create instance of SQLiteConnection?

Why there is no SQLite.Net.Platform.Generic or SQLite.Net.Platform.Win32 dlls in references from that package?


回答1:


The problem was in project type I choose. I choose Empty project that targets the new Unified API. For that project SQLiteNetExtensions package doesn’t have required libraries, such as SQLite.Net.Platform.Generic.

To solve that problem you could either choose project that targets Classic API (for that project SQLiteNetExtensions contains SQLite.Net.Platform) or create Unified API project and after adding SQLiteNetExtensions package, manually add SQLite.Net.Platform dlls to references.

Although, I'm not sure why these .Platform libraries are included in SQLiteNetExtensions package for Classic API and not for Unified API

This is how it works in my project:

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


来源:https://stackoverflow.com/questions/32053964/using-sqlite-net-extensions-and-sqliteconnection-in-xamarin-mac

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!