Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在MVVMCross中使用社区SQLite插件_Sqlite_Xamarin.ios_Mvvmcross - Fatal编程技术网

如何在MVVMCross中使用社区SQLite插件

如何在MVVMCross中使用社区SQLite插件,sqlite,xamarin.ios,mvvmcross,Sqlite,Xamarin.ios,Mvvmcross,在我的应用程序中,我使用了旧的SQLite插件。 由于MVVMCross 3.0.14版本已被弃用,建议使用Community.Sqlite插件 社区插件是通过Nuget添加的 当尝试在没有引导程序的情况下使用插件时,在运行时我会遇到以下错误: 创建时未能解析ISQLiteConnectionFactory类型的参数connectionFactory的参数 当尝试将插件与引导程序一起使用时,也在运行时,我会遇到以下错误: 插件未注册cirries.MvvmCross.Community.Plug

在我的应用程序中,我使用了旧的SQLite插件。 由于MVVMCross 3.0.14版本已被弃用,建议使用Community.Sqlite插件

社区插件是通过Nuget添加的

当尝试在没有引导程序的情况下使用插件时,在运行时我会遇到以下错误:

创建时未能解析ISQLiteConnectionFactory类型的参数connectionFactory的参数

当尝试将插件与引导程序一起使用时,也在运行时,我会遇到以下错误:

插件未注册cirries.MvvmCross.Community.Plugins.Sqlite类型

这个插件应该如何使用

-编辑- 这是我的引导程序代码:

using Cirrious.MvvmCross.Community.Plugins.Sqlite;
public class SqlitePluginBootstrap : MvxPluginBootstrapAction<PluginLoader>
{
}
使用cirries.MvvmCross.Community.Plugins.Sqlite;
公共类SqlitePluginBootstrap:mvxpluginbootstrapacation
{
}

好的,Nuget添加了对便携库的引用。我添加了对Sqlite.Touch库的引用,然后更改了我的引导程序:

using Cirrious.MvvmCross.Community.Plugins.Sqlite;
using Cirrious.MvvmCross.Community.Plugins.Sqlite.Touch;
public class SqlitePluginBootstrap : MvxLoaderPluginBootstrapAction<PluginLoader, Plugin>
{
}
使用cirries.MvvmCross.Community.Plugins.Sqlite;
使用cirries.MvvmCross.Community.Plugins.Sqlite.Touch;
公共类SqlitePluginBootstrap:mvxloaderpluginbootstraction
{
}

这为我解决了“插件未注册”错误。

确认-我遇到了相同的问题。 正如Jacco指出的那样,Nuget下载了正确的东西,但只添加了一个引用

它不会添加对cirrius.MvvmCross.Community.Plugins.Sqlite.Touch.dll的引用,也不会自动为您插入引导

我的引导中有一个额外的using语句用于MvxLoaderPluginBootstrapAction。以下是完整的代码:

using Cirrious.CrossCore.Plugins;
using Cirrious.MvvmCross.Community.Plugins.Sqlite;
using Cirrious.MvvmCross.Community.Plugins.Sqlite.Touch;
public class SqlitePluginBootstrap : MvxLoaderPluginBootstrapAction<PluginLoader, Plugin>
{
}
使用cirrius.CrossCore.Plugins;
使用cirries.MvvmCross.Community.Plugins.Sqlite;
使用cirries.MvvmCross.Community.Plugins.Sqlite.Touch;
公共类SqlitePluginBootstrap:mvxloaderpluginbootstraction
{
}

对我来说,用社区等价物(3.0.14-beta2)简单地替换被贬低的插件是有效的。请发布SQLite引导程序的代码。我的版本是v3.0.13,Nuget没有提供任何发布前更新。我将添加代码。我在使用MvvmCross>3.5时遇到了同样的问题,我需要使用Community.Sqlite插件,但在为nugget安装时,我遇到了以下错误:“Type或namespace Community”不存在于名称空间cirries.MvvmCross中