【问题标题】:MvvmCross ShowViewModel method missing缺少 MvvmCross ShowViewModel 方法
【发布时间】:2017-09-01 03:22:47
【问题描述】:

我遵循了 MvvmCross 网站上的测试文档。我能够注册我的模拟调度程序并且一切正常,除非我的任何视图模型执行ShowViewModel。这给了我一个 System.MissingMethodException。

我的测试类是一个类库(.Net 4.5)。

我有一个 WPF 应用程序,在那里一切正常。但是由于某种原因,我的测试类库给了我这个问题。我已经删除/重新安装了所有 NuGet 包,取消选中/选中了对我正在测试的视图模型所在的 PCL 的所有引用。

1) 为什么会出现此异常?

1.1) 会不会是我遗漏了一些 dll?

2) ShowViewModel 的具体定义在哪里?我能找到的唯一参考是MxvNavigationObject,但那是一个抽象类。

【问题讨论】:

  • 已修复。请参阅 Joagwa 的回答中的评论。

标签: xamarin mvvmcross


【解决方案1】:

您的 Viewmodel 类(我希望您尝试调用它)是否继承自 MvxViewModel?因为那是 ShowViewModel 方法所在的位置(通过 MvxNavigatingObject)

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using MvvmCross.Core.ViewModels;

namespace App1.ViewModels
{
    public class MainViewModel : MvxViewModel
    {
        public MainViewModel()
        {
            ShowViewModel(typeof(SecondViewModel));
        }
    }
}

【讨论】:

  • 是的。我解决了这个问题。这是 MvvmCross 的版本问题。我卸载了 v5.1.1 并安装了 4.3.0,以匹配我的 PCL。现在可以了。
猜你喜欢
  • 2014-05-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-10-04
  • 2014-05-13
  • 1970-01-01
  • 2021-11-04
相关资源
最近更新 更多