错误CS0234类型或名称空间名称'Platforms'在名称空间'MvvmCross'中不存在您是否缺少程序集引用?

问题描述

嗨,我是MvvmCross框架和Xamarin.Android开发的新手,

我尝试通过此链接关注TipCalc Android项目教程https://www.mvvmcross.com/documentation/tutorials/tipcalc/a-xamarinandroid-ui-project

但是,在创建Core项目并将解决方案中的“ MainApplication.cs”添加到Android项目之后(同时安装了MvvmCross 7.2版)。我无法引用MvvmCross中的Platforms软件包。

这给了我错误

错误CS0234在名称空间“ MvvmCross”中不存在类型或名称空间名称“平台”(您是否缺少程序集引用?)

这应该是一个简单的应用程序教程,但是它让我陷入困境已有2天了。有人有主意吗?

MainApplication.cs

using System;
using Android.App;
using Android.Runtime;
// These next 2 aren't found
using MvvmCross.Platforms.Android.Core;
using MvvmCross.Platforms.Android.Views;
using TipCalc.Core;

namespace TipCalc.Droid
{
    [Application]
    // So this MvxAndroid... is also not found
    public class MainApplication : MvxAndroidApplication<MvxAndroidSetup<App>,App>
    {
        public MainApplication(IntPtr javaReference,JniHandleOwnership transfer)
            : base(javaReference,transfer)
        {
        }
    }
}

添加MvvmCross作为程序集引用,但是这些命名空间没有显示。怎么了?

解决方法

最近mvvmcross命名空间已更改

它表明MvvmCross.Platform已更改为MvvmCross

the changelog

,

尽管对MvvmCross的6.0.0版本进行代码库更改时,reece是正确的,但为了使本教程正常工作,我的问题的实际解决方案是将Nuget中的MvvmCross软件包降级为6.2.1。 。我没有测试过其他版本,但6.2.1适用于我。

,

如果要更新旧的解决方案,请确保将您的Android应用程序项目更改为以Android 10为目标。否则,NuGet软件包将无法为Android应用程序正确安装。如果您仍在使用packages.config,则可能必须卸载软件包并在更改目标位置后再次安装它们。

您可以在此处引用TipCalc示例:https://github.com/MvvmCross/MvvmCross-Samples/tree/master/TipCalc