'无法从程序集'Microsoft.Extensions.Primitives 加载类型 'Microsoft.Extensions.Primitives.InplaceStringBuilder'

'Could not load type 'Microsoft.Extensions.Primitives.InplaceStringBuilder' from assembly 'Microsoft.Extensions.Primitives

我正在开发一个 ASP.NET Core v2.1 Razor Pages 项目,在该项目中,我正致力于实现 Auth0 以进行用户身份验证。设置完所有内容后,我尝试构建我的项目并遇到以下异常:

System.TypeLoadException: 'Could not load type 'Microsoft.Extensions.Primitives.InplaceStringBuilder' 
from assembly 'Microsoft.Extensions.Primitives, Version=5.0.0.0, Culture=neutral, 
PublicKeyToken=adb9793829ddae60'.'

为了设置 Auth0,我必须安装 Microsoft.Extensions.Primitives nuget 包。但是,在尝试构建我的项目时,这是我得到的错误。如果我删除包,当我尝试构建项目时,我会收到以下错误:

Version conflict detected for Microsoft.Extensions.Primitives. Install/reference 
Microsoft.Extensions.Primitives 5.0.0 directly to your project to resolve this issue.

以下代码是抛出异常的地方:

public class Program
{
    public static void Main(string[] args)
    {
        CreateWebHostBuilder(args).Build().Run();
    }

    public static IWebHostBuilder CreateWebHostBuilder(string[] args) =>
        WebHost.CreateDefaultBuilder(args)
            .UseStartup<Startup>();
}

我读到 InplaceStringBuilder 不再存在于 Microsoft.Extensions.Primitives 中,所以我假设这是导致问题的原因。但是,我没有看到 InplaceStringBuilder 在任何地方被使用,所以我似乎无法弄清楚它甚至需要做什么。

有谁知道解决这个问题的方法吗?

可能您有一些在 Version >= 5.0.0

上使用 Microsoft.Extensions.Primitives 的软件包

几天前我遇到了类似的问题。在我的场景中,我正在处理一个 ASP.NET Core v2.1 WEB API 和一个在 Version="5.0.0" 上使用包 Microsoft.Extensions.Configuration.Abstractions 的项目的依赖项导致了问题。我能够通过将该包从 Version 5.0.0 降级到 Version 2.1.0.

来解决问题