微軟升級的頻率有點快,轉眼 .NET Core 升級到 3.1 版了,這是一個長期支持版本,意味着 .NET Core 正式進入成熟期。
不過,對於開發人員來說,你的項目又需要遷移了。
升級項目文件
對於 ASP.NET Core 3.1 ,你需要 TargetFramework 設置為 netcoreapp3.1, 並且,在 .NET Core 2.0 中,需要引用的 Microsoft.AspNetCore.All 也不再需要。或者在 .NET Core 2.2 中的 Microsoft.AspNetCore.App 也一樣不再需要, 你的基礎項目文件看起來如下所示:
<Project Sdk="Microsoft.NET.Sdk.Web"> <PropertyGroup> <TargetFramework>netcoreapp3.1</TargetFramework> </PropertyGroup> </Project>
是不是非常清爽?
框架引用
通過上述某個包提供的 ASP.NET Core 功能,也作為 Microsoft.AspNetCore.App 共享框架的一部分提供。 共享框架是安裝在計算機上並包括運行時組件和目標包的一組程序集( .dll 文件)。 有關詳細信息,請參閱共享框架。
- 面向 Microsoft.NET.Sdk.Web SDK 的項目,已經隱式引用了 Microsoft.AspNetCore.App 框架。對於這些項目,不需要其他引用:
-
<Project Sdk="Microsoft.NET.Sdk.Web"> <PropertyGroup> <TargetFramework>netcoreapp3.0</TargetFramework> </PropertyGroup> ... </Project>
- 面向 Microsoft.NET.Sdk 或 Microsoft.NET.Sdk.Razor SDK 的項目,注意這兩個里面沒有 Web 這個詞,應該顯式在 FrameworkReference 中應用 Microsoft.AspNetCore.App:
-
<Project Sdk="Microsoft.NET.Sdk.Razor"> <PropertyGroup> <TargetFramework>netcoreapp3.0</TargetFramework> </PropertyGroup> <ItemGroup> <FrameworkReference Include="Microsoft.AspNetCore.App" /> </ItemGroup> ... </Project>
https://natemcmaster.com/blog/2018/08/29/netcore-primitives-2/