我启动 Xamarin Studio 4.0.3 并为 MonoDroid 应用程序创建一个新的解决方案。我的目标是 2.3 或更高版本。我包括来自 sqlite-net(来自站点的最新)项目的 Sqlite.cs。我确保我在项目中引用了 Mono.Data.SQLite。然后在默认 MainActivity 的 OnCreate 中,我尝试使用自述文件中显示的代码来建立数据库连接:
string path = Android.OS.Environment.DataDirectory.ToString();
string dbname = path + "/" + "test.db3";
var db = new SQLiteConnection(dbname, SQLiteOpenFlags.Create|SQLiteOpenFlags.ReadWrite ,true);
但是它总是失败,并出现一个异常说它无法打开数据库。如果我遵循 Greg Shackles 示例并使用 SqliteDbHelper 方法,它可以工作,但我想了解我做错了什么,即 sqlite-net 连接方法不起作用。我有一种感觉,我错过了一些简单的东西。我也尝试过将文件名传递给 SQLiteConnection() ,但是当它失败时,我添加了 OpenFlags 以查看是否是问题所在。