.net - 如何将库项目中的 ASP.NET Core 3.0 类型用于共享 Controller 、中间件等?

标签 .net asp.net-core .net-core csproj asp.net-core-3.0

虽然可以通过 NuGet 使用最高 2.2 的 ASP.NET Core 来为共享 Controller 、中间件等创建库项目,但如何创建能够使用 ASP.NET Core 3.0 类型的库?

虽然对于包含 View 的项目有一个“Razor 类库”(razorclasslib)模板,但如何创建仅包含逻辑组件的库?

最佳答案

为 .NET Core 3.0 构建的应用程序可以引用一个或多个共享框架。 ASP.NET Core 是这些共享框架之一(其他将是基本的 .NET Core 共享框架和包含 WinForms 和 WPF 的 Windows 桌面共享框架)。

要从面向 .NET Core 3.0(netcoreapp3.0,不是 .NET Standard)的经典 .NET Core 库引用 ASP.NET Core,可以使用 FrameworkReference在csproj中引用框架:

<Project Sdk="Microsoft.NET.Sdk">

  <PropertyGroup>
    <TargetFramework>netcoreapp3.0</TargetFramework>
  </PropertyGroup>

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

</Project>

在 Visual Studio 中打开时,此附加框架引用将显示在解决方案资源管理器的依赖项节点中:

enter image description here

关于.net - 如何将库项目中的 ASP.NET Core 3.0 类型用于共享 Controller 、中间件等?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57760356/

相关文章:

javascript - 根据验证结果切换元素可见性

asp.net - Net Core 2.0寻找appsettings.Production.json

C#(dotnet 核心)关联失败。 GKE 上的入口 (GLBC) 负载均衡器背后

c# - C#中var和IEnumerable的区别?

c# - Asp.net 核心。使用类型参数配置 IOptions 方法(非通用)

c# - 循环中的 Sql 请求会减慢 C# 应用程序的速度

c# - Entity Framework Core - 更新相关集合

macos - VSCode-如何在.Net Core 2.0+ API中管理用户 secret

.net - 尝试读取 MySQL 中流错误的结尾

.net - .net 4.0表达式树的好用例是什么?