【问题标题】:System.TypeLoadException occurred when i try to compile当我尝试编译时发生 System.TypeLoadException
【发布时间】:2020-04-06 06:54:17
【问题描述】:

System.TypeLoadException'无法使用令牌解析类型 来自 typeref 的 01000016(预期类 程序集中的“Xamarin.Forms.Xaml.Diagnostics.VisualDiagnostics” 'Xamarin.Forms.Core,版本 = 2.0.0.0,文化 = 中性, PublicKeyToken=null')'

这是出现此错误的 App.cs 文件:

namespace NewApp

{

    public partial class App : Application

    {

        public App()

        {

            InitializeComponent(); // GETTING THE ERROR
            Material.Init(this);
            MainPage = new MaterialNavigationPage(new MainPage());

        }
    }
}

【问题讨论】:

  • 这通常发生在升级后和/或不同项目之间的版本不一致的情况下。确保所有 Xamarin.Forms 版本在项目中都是相同的,并清理和重建你的解决方案。您可能需要确保从所有项目中删除所有 bin 和 obj 文件夹。
  • 谢谢伙计 .. 我尝试并删除了所有 bin 和 obj 几次 然后奇迹发生了@GeraldVersluis
  • 在新的项目中使用相同的代码,是否出现此错误?如果是,能否提供重现错误的代码示例供我们测试?
  • 不,它不适用于新项目@WendyZang-MSFT
  • 很高兴你解决了这个问题。

标签: c# visual-studio xamarin.forms


【解决方案1】:

我在添加 NUGET 包 Xamarin.Forms 时遇到了同样的问题。

检查您的 Android Xamarin.Forms NuGet 包,并检查您的 IOS 项目。

您会注意到您的版本不匹配。

在每个包上右键更新以更新到最新版本。

对包括 Xamarin 主项目在内的所有项目执行此操作。然后删除文件系统中每个项目的 bin 和 obj 文件夹。 Xamarin、IOS 和 Android。

重建。然后启动。 应该也适合你。

【讨论】:

    【解决方案2】:

    在升级 Xamarin.Forms 期间,我也发生了同样的事情。

    这个问题似乎只存在于 iOS 版本中。

    要解决此问题,请从解决方案中的所有项目中删除 Xamarin.Forms 依赖项,然后通过 nuget 重新安装 Xamarin.Forms。

    然后全部清除 --> 全部重建

    【讨论】:

      【解决方案3】:

      我有同样的问题。

      只需检查 /Packages 和 /Dependencies/NuGet 文件夹中的 Xamarin 包版本是否相同。

      之后,清除所有并重建所有。

      【讨论】:

      • 你提到的那些目录在哪里?在我的项目文件夹中看不到它们。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-04-23
      • 2021-12-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-09-20
      • 2017-10-18
      相关资源
      最近更新 更多