C# 向MvvmCross提供其他视图程序集

C# 向MvvmCross提供其他视图程序集,c#,xamarin.forms,mvvmcross,C#,Xamarin.forms,Mvvmcross,在Xamarin Forms应用程序中,我想提供另一个视图程序集(而不是默认的),MvvmCross可以在其中查找视图 在执行以下操作之后,在UWP的设置类中,I覆盖GetViewAssembly()以添加其他程序集: protected override IEnumerable<Assembly> GetViewAssemblies() { var viewAssemblies = new List<Assembly>();

在Xamarin Forms应用程序中,我想提供另一个视图程序集(而不是默认的),MvvmCross可以在其中查找视图

在执行以下操作之后,在UWP的设置类中,I
覆盖GetViewAssembly()
以添加其他程序集:

    protected override IEnumerable<Assembly> GetViewAssemblies()
    {
        var viewAssemblies = new List<Assembly>();
        viewAssemblies.AddRange(base.GetViewAssemblies());
        viewAssemblies.Add(typeof(MovementPage).GetTypeInfo().Assembly);

        return viewAssemblies;
    }
当此页面出现在默认程序集中(包含ViewModels的程序集,App.cs)时,将显示该页面


这里可以做些什么?

重写
InitializeViewLookup()
可以工作,但很繁琐:(

protected override void InitializeViewLookup()
{
var viewsLookup=新字典
{
[typeof(MovementViewModel)]=typeof(MovementPage)
};
var container=Mvx.Resolve();
container.AddAll(viewsLookup);
}

我这样做是为了将视图和业务逻辑放在单独的程序集中。
mvx:Diagnostic: 10.46 Setup: Secondary end
mvx:Diagnostic: 10.51 Showing ViewModel MovementViewModel
Exception thrown: 'System.Collections.Generic.KeyNotFoundException' in MvvmCross.Core.dll
mvx:Diagnostic: 10.82 Page not found for MovementPage
mvx:Error: 10.84 Skipping request for MovementViewModel
Exception thrown: 'System.ArgumentNullException' in Xamarin.Forms.Platform.UAP.dll
Exception thrown: 'System.ArgumentNullException' in MovementTimer.UWP.exe
protected override void InitializeViewLookup()
{
    var viewsLookup = new Dictionary<Type, Type>
    {
        [typeof(MovementViewModel)] = typeof(MovementPage)
    };

    var container = Mvx.Resolve<IMvxViewsContainer>();
    container.AddAll(viewsLookup);
}