C#无法找到类型或名称空间“Core”。 CS0246

时间:2017-09-19 05:10:02

标签: c# android xamarin.android visual-studio-2017 mvvmcross

我正在使用VisualStudio 2017社区版。 我开始使用MVVMCross开发Xamarin.Native。

我开始时我似乎遇到了一个我不理解的错误。

C# The type or namespace 'Core' could not be found. CS0246

我正在看这个video-tutorials-mvvm-starterpack

我仔细按照说明操作并遇到了错误,我甚至尝试修复了here仍然没有发生的错误。

所以这就是我的Xamarin.Android下Setup.cs出现问题的地方。

using Android.Content;
using MvvmCross.Droid.Platform;
using MvvmCross.Core.ViewModels;
using MvvmCross.Platform.Platform;

namespace MVVMApp1.Droid
{
    public class Setup : MvxAndroidSetup
    {
        public Setup(Context applicationContext) : base(applicationContext)
        {
        }

        protected override IMvxApplication CreateApp()
        {
            return new Core.App(); // here problem lies the Core 
        }

        protected override IMvxTrace CreateDebugTrace()
        {
            return new DebugTrace();
        }
    }
}

请引导我走向正确的方向。

2 个答案:

答案 0 :(得分:1)

在源代码中,您有MvvmCross.Core命名空间,可能与YourApp.Core命名空间冲突。 使用完整命名空间:

return new MyApp.Core.App();

答案 1 :(得分:1)

导致问题的行是尝试实例化位于共享(或核心)项目中的App类。在这种情况下,Core指的是包含应用程序共享代码的名称空间核心项目。这里可能有一些错误:

  1. 确保从Android和iOS项目中引用您的核心项目;
  2. 检查核心项目中App类的命名空间。 MvvmCross StarterPack假定它被称为<YourAppName>.Core(在您的情况下为MVVMApp1.Core)。如果您使用了不同的名称,只需更新对Core.App();的调用以包含正确的命名空间(请注意,您还包含正确的using语句,并且仍然确保引用项目,请参阅第1点)。
  3. 希望这会有所帮助。如果您有更多问题,请不要犹豫。