如何在 .net 6 库中引用 ASP.NET Core 6 类型?

How to reference ASP.NET Core 6 types in .net 6 library?

我正在为我的组织开发内部库。我需要引用通常“属于”网络应用程序的某些类型,例如。提供一些扩展:

如果我使用 <Project Sdk="Microsoft.NET.Sdk">,我没有对这些类型的引用,也找不到包含它们的任何 nuget 包。如果我使用 <Project Sdk="Microsoft.NET.Sdk.Web">,我无法构建我的 class 库,因为它被视为应用程序并且必须指定入口点。

所以,我的一般问题是:为 ASP.NET Core 6 编写库的正确方法是什么?

回到核心 2.x 天,所有东西都有包裹,比如 Microsoft.AspNetCore.Http.Abstractions。它们都停留在 2.2.0 版本,我认为它们现在无法使用?

您需要添加 FrameworkReference 而不是 PackageReference,如 here 所述。

<ItemGroup>
  <FrameworkReference Include="Microsoft.AspNetCore.App" />
</ItemGroup>