每个人都过得愉快, 我正在使用适用于iOS,Android,Windows Universal(10)的Xamarin.Forms Portable构建应用程序。
我尝试使用Mono.Data.Sqlite.Portable,但我无法创建或连接到本地数据库,我尝试了很多解决方案来解决问题,但直到现在我才找到解决方案..
错误是" connection.open();"
守则是:
var config = DependencyService.Get<DB.IConfig>();
var cnn = config.DirectoryDB;
using (var connection = new SqliteConnection("" +
new SqliteConnectionStringBuilder
{
DataSource = "URI=file::memory:",
Version=3,
}))
{
//connection.ChangeDatabase("hello.db");
connection.Open();
using (var transaction = connection.BeginTransaction())
{
var insertCommand = connection.CreateCommand();
insertCommand.Transaction = transaction;
insertCommand.CommandText = "CREATE TABLE TESTE(teste as varchar(10))";
insertCommand.ExecuteNonQuery();
transaction.Commit();
}
}
on&#34; DataSource&#34;我有一条本地路径和其他路径。 (例如:C:\ Users \ MyMachineName \ AppData \ Local \ Packages \ f736c883-f105-4d30-a719-4bf328872f5e_nh7s0b45jarrj \ LocalState \ hello.db)
错误是:
类型&#39; System.NotImplementedException&#39;的例外情况发生在Mono.Data.Sqlite.dll但未在用户代码中处理
附加信息:未实施方法或操作。
最后一张图片,它可能会提供更多信息......
提前谢谢大家:)
答案 0 :(得分:0)
我找到了解决方案,我希望它可以帮助那些可能和我一样寻找的人。
转到Nuget - 然后下载依赖于SQLitePCL(最新版本)的Portable.Data.Sqlite。 这个包(Portable.Data.Sqlite)它将使用连接,并将创建SqliteDataReader和我们习惯使用的其他属性。
这适用于Visual Studio 2015,项目必须在框架4.51 + =
中----错误提示----
如果您遇到此错误:无法使用临时数据库或路径,只需下载Sqlite.dll并放置在项目BIN文件夹和System32 / SysWoW64上。