从 .NET Core 2.2 迁移到 .NET Core 3.0 导致无法加载类型 Microsoft.AspNetCore.Razor

问题描述

我最近一直在尝试将现有的 .NET Core 2.2 WEB API 项目迁移到 .NET Core 3.1,目的是先从 .NET Core 2.2 迁移到 3.0,然后再迁移到 3.1。

解决方案包含多个 .NET Core 2.2 类库和一个 .NET Core 2.2 Web Api 项目及其相应的测试项目。

我目前面临一个我无法找到解决方案的问题,希望这里有人能启发或指导解决方案。

因此,我一直在阅读有关 Migrating from ASP.NET Core 2.2 to 3.0 的官方文档,并设法进行了所有必要的更改并成功重建了解决方案,但由于某种原因,我在运行时不断收到以下异常web api 测试项目。

System.Reflection.ReflectionTypeLoadException : Unable to load one or more of the requested types.
    Could not load type 'Microsoft.AspNetCore.Razor.Language.RazorTemplateEngine' from assembly 'Microsoft.AspNetCore.Razor.Language,Version=3.0.0.0,Culture=neutral,PublicKeyToken=adb9793829ddae60'.

这里是api项目包参考:

enter image description here

及其对应的测试项目参考:

enter image description here

我认为这可能与上述屏幕截图中的包或 web api 项目所依赖的类库有关?还是遗漏了什么?

现在我已经从 Github、SO 和其他来源彻底研究并调查了这个异常数小时,希望能找到解决方案,但无济于事。

如果有人能对此有所了解,那就太好了。如果您需要我提供更多信息或有任何疑问,请在评论中告诉我。

提前致谢。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)