2017-09-01 72 views
0

我按照MvvmCross網站上的測試文檔。我可以註冊我的模擬調度程序,除了當我的任何視圖模型執行ShowViewModel時,一切都可以工作。這給了我一個System.MissingMethodException。MvvmCross ShowViewModel方法丟失

我的測試類是一個類庫(.Net 4.5)。

我有一個WPF應用程序,並在那裏一切工作正常。但由於某種原因,我的測試類庫給了我這個問題。我已經刪除/重新安裝了所有NuGet包,取消選中/檢查了所有對我測試的視圖模型所在的PCL的引用。

1)爲什麼我得到這個異常?

1.1)這可能是我錯過了一些dll嗎?

2)ShowViewModel的實際具體定義在哪裏?我能找到的唯一參考文獻是MxvNavigationObject,但這是一個抽象類。

+0

已修復。請參閱Joagwa的答案中的評論。 – Ash

回答

0

你的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)); 
     } 
    } 
} 
+0

是的。我解決了這個問題。這是MvvmCross的版本問題。我卸載了v5.1.1並安裝了4.3.0,以匹配我的PCL。現在它可以工作。 – Ash