MvvmCross - '无法加载类型 Sequence.Plugins.InfiniteScroll.PluginLoader 的插件程序集'

Posted

技术标签:

【中文标题】MvvmCross - \'无法加载类型 Sequence.Plugins.InfiniteScroll.PluginLoader 的插件程序集\'【英文标题】:MvvmCross - 'could not load plugin assembly for type Sequence.Plugins.InfiniteScroll.PluginLoader'MvvmCross - '无法加载类型 Sequence.Plugins.InfiniteScroll.PluginLoader 的插件程序集' 【发布时间】:2017-12-01 11:35:44 【问题描述】:

我最近将 MvvmCross 更新到了 5.0.5 版。 现在看起来它没有在我的 Windows 10 UWP 应用上加载插件。

这是我在开始时收到的异常:

MvvmCross.Platform.Exceptions.MvxException: 'could not load plugin assembly for type Sequence.Plugins.InfiniteScroll.PluginLoader'

我通过 NuGet 安装了插件,并且正在使用下面的引导程序。当我评论它时,应用程序会打开,但当我加载列表时它显然会崩溃。

using MvvmCross.Platform.Plugins;
using Sequence.Plugins.InfiniteScroll;
namespace Check.UWP.Bootstrap

  public class InfiniteScrollPluginBootstrap : MvxPluginBootstrapAction<PluginLoader>
  

  

Image: Project References

我正在使用这个 InfiniteScroll 插件:

https://github.com/HBSequence/Sequence.Plugins

更新前,一切正常。

android 上,我没有问题。

提前致谢。

【问题讨论】:

【参考方案1】:

这是由于 MvvmCross 如何通过程序集名称查找插件。在某些时候,这种情况发生了变化,现在寻找 Uwp 和 WindowsCommon:https://github.com/MvvmCross/MvvmCross/blob/develop/MvvmCross/Windows/Uwp/Platform/MvxWindowsSetup.cs#L66

这意味着您正在使用的以 WindowsUWP 结尾的插件将不会被自动拾取。您可能想要求作者更新他的插件以针对最新的 MvvmCross 5.x 进行构建

作为解决此问题的方法,您应该能够从 Setup.cs 文件加载插件。您可以删除引导文件。

只需将以下代码放在 Setup.cs 文件中的 InitializeLastChance 覆盖中:

Mvx.RegisterSingleton<IIncrementalCollectionFactory>(new IncrementalCollectionFactory());

【讨论】:

以上是关于MvvmCross - '无法加载类型 Sequence.Plugins.InfiniteScroll.PluginLoader 的插件程序集'的主要内容,如果未能解决你的问题,请参考以下文章

MvvmCross 4 和 Xamarin.iOS -> 使用 Storyboard 时如何从 Core 加载视图控制器?

无法在我的 Xamarin MvvmCross Android 应用程序中注册推送“预计为虚拟类型”

Mvvmcross 加载指示器未显示

使用 mvvmcross 显示视图模型时无法解析当前的***活动

Xamarin.iOS MvvmCross模板;无法打开故事板

Xamarin iOS - MVVMCross:无法使用 ViewModel 中的命令连接自定义单元格中的按钮