【发布时间】:2021-05-30 15:14:56
【问题描述】:
我正在开发一个 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>();
}
我已阅读 Microsoft.Extensions.Primitives 中不再存在 InplaceStringBuilder,因此我假设这是导致问题的原因。但是,我没有看到在任何地方使用 InplaceStringBuilder,所以我似乎无法弄清楚它甚至需要什么。
有人知道解决这个问题的方法吗?
【问题讨论】:
-
你确定在 asp.net core 版和 Primitives 版上?
-
目标框架为.NET Core 2.1,安装Primitives 5.0.0。
-
也许您可以尝试将您的软件包
Primitives从 5.0.0 更新到 2.1.1。 -
@Yinqiu,我试过了,它仍然抛出相同的异常,我不明白,因为它仍然说它无法从 Microsoft.Extensions.Primitives V 5.0 程序集加载。 0
标签: c# asp.net-core auth0