本文說明如何規劃和執行 .NET 應用程式的升級。 它可協助您評估目前的應用程式、選擇正確的升級路徑、使用可用的工具,以及驗證升級的應用程式。 請參考指引從 .NET Framework 升級到現代 .NET,或升級到最新的 .NET 版本,或是將應用程式現代化以支援雲端與容器。
升級時機
當業務或技術訊號顯示出明確的價值時,請考慮升級:
- .NET 或其他相依元件已達終止支援狀態。
- 發現新的安全漏洞,或者您必須滿足新的合規性要求。
- 你會面臨效能或擴展性的限制,而這些都是新版 .NET 所解決的。
升級也是現代化應用程式的好機會。 例如,你可以將應用程式容器化、將元件移至雲原生服務,或套用雲端模式以提升可靠性與操作性。 升級同時能提升開發者生產力,啟用更新的 SDK、範本及語言功能,簡化開發並減少維護負擔。
依風險和回報排定升級的優先順序:執行有針對性的評估,在低風險專案上試用變更,並使用結果來規劃更廣泛的移轉。
.NET 版本生命週期
.NET 每年發布新的主要版本,並在標準支援(STS)與長期支援(LTS)版本間交替推出。 每個版本都有明確的支援期間,之後就不再會收到安全與品質更新。 請圍繞這些日期規劃升級頻率,確保應用程式維持在支援版本:
- LTS 版本 支援三年,是偏好穩定的生產應用程式的典型選擇。
- STS 版本 支援 18 個月,當你想更早採用新功能時非常有用。
有關支援版本、支援終止日期及修補指引,請參閱
.NET SDK 可以針對較舊版本的 .NET,如果你部署到尚未支援最新執行環境的主機服務,可能需要這些版本。 請持續更新你的開發者工具,因為每個版本都會修正安全漏洞並加入與新技術的相容性。
選擇升級路徑
大多數升級可分為以下幾類之一。 先從符合你情境的指引開始,然後使用本文後面描述的工具來執行工作。
從 .NET Framework 到現代 .NET
將僅限 Windows 的 .NET Framework 應用程式移至跨平台的 .NET。 應用程式模式、專案格式和部分 API 會改變,你可能需要替換現代 .NET 中無法使用的技術。 關於變更內容及規劃方式,請參見 從 .NET Framework 移植到 .NET 概述。 相關指引:
舊.NET到最新版本的.NET
從已不支援或較舊的 .NET 版本升級到目前版本。 這些升級通常範圍較小——多半是目標框架、相依性及破壞性變更的更新。 檢閱.NET 重大變更,涵蓋你升級過程中所跨越的版本。
升級後現代化
當你的應用程式在現代.NET上建置並運行後,可以利用更新的模式,如
appsettings.json設定、依賴注入,以及現代的網頁和桌面控制功能。 如需點子與逐步指引,請參閱從.NET框架升級至.NET後現代化。搬到雲端
將應用程式容器化,以管理服務取代本地元件,並採用雲端模式以提升可靠性與可觀察性。
GitHub Copilot 應用程式 現代化(推薦)
GitHub Copilot 應用程式現代化代理程式提供 AI 輔助的端對端體驗,加速移植與現代化工作。 代理程式會分析您的專案並撰寫計劃以完成您想要的升級。 您可以調整和迭代計劃,然後執行升級。 有了這位代理人,你可以:
- 將專案升級至較新的 .NET 版本。
- 評估應用程式的程式碼、組態和相依性。
- 將專案從舊版 .NET 移轉至最新版本。
- 將應用程式相依的技術移轉至 Azure。
- 規劃和佈建正確的 Azure 資源。
- 修正問題並套用雲端移轉最佳實務。
- 驗證您的應用程式是否已建置,且測試是否通過。
當你想要一條有引導、由 AI 驅動的路徑來評估、修復和現代化程式碼庫時,請使用代理程式——特別是對於依賴許多依賴、依賴 Windows 專用 API,或計劃容器化或遷移到雲端的專案。 如需詳細資訊,請參閱 什麼是 GitHub Copilot 應用程式現代化。
.NET 升級助理(已棄用)
.NET 升級助理 是一款Visual Studio擴充與 CLI 工具,用於分析專案並套用常見的升級變更。 它已正式被棄用,取而代之的是 GitHub 的 Copilot 應用程式 現代化代理程式,且不再積極開發。 只有在無法使用現代化代理程式時才使用,例如你的環境無法存取 GitHub Copilot。 新的工作項目應改以現代化代理程式為目標。