GitHub Copilot 應用程式現代化是 GitHub Copilot 代理程式,可協助將專案升級至較新版本的 .NET,並引導您完成評量、解決方案建議、程式碼修正和驗證,快速自信地將 .NET 應用程式移轉至 Azure,所有這些都在 Visual Studio 內完成。
此流程簡化了現代化並提高了開發人員的生產力和信心。 GitHub Copilot 應用程式現代化是一個整合一體的升級與遷移代理,利用 AI 提升開發者的速度、品質與成果。
有了這位代理人,你可以:
- 升級至較新版本的 .NET。
- 移轉技術並部署至 Azure。
- 將 .NET 應用程式現代化,尤其是從 .NET Framework 升級時。
- 評估應用程式的程式碼、組態和相依性。
- 規劃並設定正確的 Azure 資源。
- 修正問題並套用雲端移轉的最佳做法。
- 驗證您的應用程式是否成功建置和測試。
提供意見反應
意見反應對 Microsoft 和此代理程式的效率很重要。 使用 Visual Studio 的 [建議] 功能和[報告問題 ] 功能來提供意見反應。
先決條件
您必須先符合下列項目,才能使用 GitHub Copilot 應用程式現代化:
Windows 作業系統
Visual Studio 2026(或 Visual Studio 2022 版本 17.14.17 或更新版本)。
.NET 桌面開發工作負載 ,並啟用下列選擇性元件:
- GitHub Copilot
- 適用於 .NET 的 GitHub Copilot 應用程式現代化
Copilot 授權和支援的訂閱方案:
使用 GitHub 帳戶 搭配 Copilot 存取登入 Visual Studio。
支援的訂用帳戶方案:
- Copilot Pro
- 副駕駛專業版+
- 副駕駛業務
- 副駕駛企業
這很重要
如果您變更訂用帳戶,則必須重新啟動 Visual Studio。
程式代碼必須以 C# 撰寫。
如何開始升級或移轉
若要開始升級或移轉,請遵循下列步驟與 GitHub Copilot 互動:
在 Visual Studio 中開啟 .NET 專案或解決方案。
使用下列其中一種方法存取 GitHub Copilot 應用程式現代化代理程式:
以滑鼠右鍵按一下 [方案總管 ] 中的解決方案或專案,然後選取 [現代化]。
—或—
開啟 GitHub Copilot Chat 視窗,然後輸入
@modernize您的升級或移轉要求。告訴代理程式
@modernize您要升級或移轉的內容。
升級 .NET 專案
現代化代理程式支援升級以 C# 編碼的專案。 支援下列型態的專案:
- ASP.NET Core (以及相關技術,例如 MVC、Razor Pages 和 Web API)
- Blazor
- Azure Functions
- Windows Presentation Foundation
- Windows Forms
- 類別庫
- 主控台應用程式
若要瞭解如何開始升級,請參閱如何使用 GitHub Copilot 應用程式現代化升級 .NET 應用程式。
升級路徑
下列是支援的升級路徑:
- 將專案從舊版 .NET 升級至最新版本。
- 將 .NET Framework 專案升級到 .NET。
- 使用新功能將程式碼庫現代化。
- 將元件和服務移轉至 Azure。
將 .NET 專案移轉至 Azure
現代化代理程式結合了自動化分析、AI 驅動的程式代碼補救、建置和弱點檢查,以及部署自動化,以簡化移轉至 Azure。 下列功能說明代理程式如何評估整備程度、套用修正程式,以及簡化移轉程序:
分析與智慧建議。
評估應用程式對 Azure 移轉的準備程度,並根據其相依性和已識別的問題接收量身打造的指引。
人工智慧驅動的程式碼修復。
套用預先定義的最佳實務程式碼模式,以最少的手動工作加速現代化。
自動建置和 CVE 解析。
自動構建您的應用程序並解決編譯錯誤和漏洞,從而簡化開發。
無縫部署。
輕鬆部署至 Azure,以前所未有的速度將程式碼從開發移至雲端。
預先定義的移轉工作
預先定義的工作會擷取使用 Azure 服務的業界最佳做法。 目前,適用於 .NET 的 GitHub Copilot 應用程式現代化提供涵蓋常見移轉案例的預先定義工作。
移轉至 Azure 上以受控識別為基礎的資料庫,包括 Azure SQL DB、Azure SQL MI 和 Azure PostgreSQL
使用安全的受控識別驗證,從內部部署或舊版資料庫 (例如 DB2、Oracle DB 或 SQL Server) 移轉至 Azure SQL DB、Azure SQL 受控執行個體或 Azure PostgreSQL,將資料層現代化。
移轉至 Azure 檔案儲存體
將檔案 I/O 作業從本機檔案系統移至 Azure 檔案儲存體,以進行可調整的雲端式檔案管理。
移轉至 Azure Blob 儲存體
將內部部署或跨雲端的物件儲存,或本機檔案系統的檔案 I/O,替換為用於非結構化資料的 Azure Blob 儲存體。
移轉至 Microsoft Entra ID
將驗證和授權從 Windows Active Directory 轉換至 Microsoft Entra ID (先前稱為 Azure AD),以進行新式身分識別管理。
使用受控識別和 Azure 金鑰保存庫移轉至安全的憑證
將設定或程式碼中的純文字認證取代為安全的受控識別和 Azure Key Vault 以進行秘密管理。
移轉至 Azure 服務匯流排
從舊版或第三方訊息佇列 (例如 MSMQ 或 RabbitMQ) 或 Amazon SQS (AWS Simple Queue Service) 移至 Azure 服務匯流排,以取得可靠的雲端式傳訊。
移轉至 Azure 通訊服務電子郵件
以 Azure 通訊服務取代直接 SMTP 電子郵件傳送,以實現可調整、安全的電子郵件傳遞。
移轉至適用於 Apache Kafka 的 Confluent Cloud/Azure 事件中心
使用 Confluent Cloud 或 Azure 事件中樞從本機或內部部署 Kafka 轉換至受控事件串流。
移轉至 Azure 上的 OpenTelemetry
從本機記錄架構 (例如 log4net、serilog 和 Windows 事件記錄檔) 轉換至 Azure 上的 OpenTelemetry。
移轉至具有受控識別的 Azure Cache for Redis 將記憶體內部或本機 Redis 快取實作取代為適用於 Redis 的 Azure 快取,以取得高可用性、延展性和企業級安全性。
它是如何運作的
一旦您要求現代化代理程式升級或移轉您的應用程式,Copilot 就會分析您的專案及其相依性,然後詢問您一系列有關升級或移轉的問題。 回答完這些問題後,就會以 Markdown 檔案的形式編寫一個計劃。 如果您告訴 Copilot 繼續升級或移轉,它會遵循計劃中所述的步驟。
您可以編輯 Markdown 檔案來變更升級步驟或新增更多內容,以調整計劃。
執行升級或移轉
計劃準備就緒後,告訴 Copilot 開始使用它。 程式開始後,Copilot 會讓您知道它在聊天視窗中正在做什麼,並開啟升級 進度詳細資料 文件,其中列出每個步驟的狀態。
如果遇到問題,Copilot 會嘗試識別問題的原因並套用修正程式。 如果 Copilot 似乎無法更正問題,它會要求您提供協助。 當您介入時,Copilot 會從您所做的變更中學習,並嘗試自動為您套用這些變更,如果問題再次發生。
計劃中的每個主要步驟都會提交至本機 Git 存放庫。
升級和移轉結果
當該過程完成時,將產生一份報告,描述 Copilot 採取的每個步驟。 該工具為流程的每個部分創建一個 Git 提交紀錄,因此您可以輕鬆回溯變更或獲取所變更內容的詳細資訊。 報告包含 Git 提交哈希值。
報告也會提供 後續步驟 一節,說明升級完成之後應採取的步驟。
遙測
此工具只會收集專案類型、升級意圖和升級持續時間的相關數據。 數據會透過Visual Studio本身收集和匯總,且不包含任何用戶可識別的資訊。 如需Microsoft隱私策略的詳細資訊,請參閱 Visual Studio客戶經驗改進計畫。