升級至新的 .NET 版本
每年都會發行新的 .NET 版本。 只要新版本可供使用,許多開發人員就會開始升級程序,而其他人員則會等到其所使用的版本不再受支援為止。 升級程序有多個要考量的層面。
升級至新 .NET 版本的常見原因:
- 目前使用的 .NET 版本不再受支援
- 新版本支援新的作業系統
- 新版本具有重要的 API、效能或安全性功能
升級開發環境
若要升級至新的 .NET 版本,.NET SDK 會是要安裝的主要元件。 其中包含更新的 .NET CLI、組建系統和執行階段版本。
.NET 網站提供的安裝程式和封存,可供您在任何支援的作業系統和結構下載及使用。
某些作業系統有套件管理員,您也可以使用此套件管理員,安裝您可能偏好的新 .NET 版本。
Visual Studio 會自動安裝新的 .NET SDK 版本。 對於 Visual Studio 使用者來說,升級至較新的 Visual Studio 版本就已足夠。
升級原始程式碼
升級應用程式的唯一必要變更是,將專案檔中的 TargetFramework
屬性更新為較新的 .NET 版本。
以下說明做法:
- 開啟專案檔 (
*.csproj
、*.vbproj
或*.fsproj
檔案)。 - 例如,將
<TargetFramework>
屬性值從net6.0
變更為net8.0
。 - 如果使用的是
<TargetFrameworks>
屬性,則相同的模式也適用於該屬性。
升級助理可以自動進行這些變更。
下一步是使用新的 SDK 建置專案 (或解決方案)。 如果需要其他變更,SDK 會提供警告和錯誤,以為您提供引導。
您可能需要執行 dotnet workload restore
,以使用新的 SDK 版本還原工作負載。
其他資源:
更新持續整合 (CI)
CI 管線遵循類似專案檔和 Dockerfiles 的更新程序。 一般而言,您可以只變更版本值,以更新 CI 管線。
更新裝載環境
有許多可用來裝載應用程式的模式。 如果裝載環境包含 .NET 執行階段,則必須安裝新版的 .NET 執行階段。 必須在 Linux 上安裝相依性,不過,這些相依性在 .NET 版本之間通常不會有所變更。
針對容器,FROM
陳述式必須變更以包含新的版本號碼。
下列 Dockerfile 範例示範如何提取 ASP.NET Core 8.0 映像。
FROM mcr.microsoft.com/dotnet/aspnet:8.0
在 Azure App Service 之類的雲端服務中,需要設定變更。