作为 Nuget 包使用的 MVVMCross 核心 (PCL) 项目

MVVMCross core (PCL) projects consumed as Nuget package

我自己没有尝试过,但想看看是否有人已经探索过这种情况?

MVVMCross 是否能够 detect/link View-ViewModels 等并像以下情况一样工作:

我在解决方案 A 中有一个 X.Droid 和 X.iOS 项目以及一个共享核心 PCL 项目。 我想在 additional/separate 核心 (PCL) 项目中编写 ViewModel 类,添加到解决方案 B 中,将 nuget 包作为输出,然后在 Droid 中编写 consume/reference/add 包和 iOS 个项目。

您可以覆盖 Setup.cs class 以在 MvvmCross 应查找 ViewModel 的位置提供更多程序集。

因此,如果您在程序集 A 中编写大部分应用程序,但在程序集 B 中有一些共享的 ViewModel,可能还有一些在程序集 C 中,您可以这样做:

protected override IEnumerable<Assembly> GetViewModelAssemblies()
{
    var vmAssemblies = new List<Assembly>(base.GetViewModelAssemblies())
    {
        typeof(ViewModelInAssemblyB).Assembly,
        typeof(ViewModelInAssemblyC).Assembly
    };
    return vmAssemblies;
}