使用 .NET Upgrade Assistant 將 Xamarin.Forms 應用程式升級至 .NET MAUI 應用程式
.NET Upgrade Assistant 可藉由轉換方案的專案檔和執行一般程式代碼更新,協助您將專案升級 Xamarin.Forms 至 .NET 多平臺應用程式 UI (.NET MAUI)。 具體來說,此工具會:
- 將 Xamarin.Forms 類別庫專案、Xamarin.iOS 專案和 Xamarin.Android 項目轉換為 SDK 樣式專案。
- 視需要將項目檔中的目標 Framework 更新為 net8.0-android 和 net8.0-ios。
- 在項目檔中設定
<UseMaui>true</UseMaui>
。 - 新增其他項目屬性,並移除不需要的項目屬性。
- 新增與移除特定的 NuGet 套件:
- Xamarin.Forms拿掉和 Xamarin.Essentials NuGet 套件。
- 將 Xamarin.CommunityToolkit NuGet 套件取代為 .NET MAUI Community Toolkit NuGet 套件。
- 如果使用 ,請將 NuGet 套件的SkiaSharp相容版本取代Xamarin.Forms為 .NET MAUI 相容版本。
- 拿掉命名空間的
Xamarin.Essentials
參考,並將命名空間取代Xamarin.Forms
為Microsoft.Maui
和Microsoft.Maui.Controls
命名空間。
執行此工具之後,需要額外的工作才能完成移轉。
注意
適用於 .NET MAUI 的 .NET 升級小幫手不支持升級 UWP 專案、iOS 擴充專案或系結專案。
如需 .NET Upgrade Assistant 的詳細資訊,包括它可以轉換的其他應用程式類型,請參閱 .NET Upgrade Assistant 概觀。
開始使用
.NET Upgrade Assistant 可作為 Windows 上的 Visual Studio 擴充功能,以及作為 Windows 和 Mac 的 CLI 工具。 若要使用它,您的 Xamarin.Forms 項目必須使用 Xamarin.Forms 4.8 或更高版本。 不過,為了獲得最佳成功,我們建議您 Xamarin.Forms 的專案使用 Xamarin.Forms 5.0 和 .NET Standard 2.0 或更高版本。
重要
.NET MAUI 的 .NET 升級小幫手仍在開發中。 請使用「區域:Maui」標籤提出意見反應,讓我們可以繼續改善此工具。
.NET 升級小幫手會提示您輸入要執行的升級類型:
- 就地:此選項會升級您的專案,而不進行複本。
- 並存:此選項會複製您的專案並升級複本,讓原始項目獨一無二。 目前,.NET MAUI 並存升級需要建立新的專案,才能升級每個專案前端。 嘗試將專案前端升級至現有專案可能會造成錯誤,且目前不支持的體驗。
將應用程式升級 Xamarin.Forms 至 .NET MAUI 之前,您應該先將應用程式更新 Xamarin.Forms 為使用 Xamarin.Forms 5,並確定它仍能正常執行。 此外,您應該更新應用程式使用至最新版本的相依性。
這有助於簡化移轉程序的其餘部分,因為它會將 與 .NET MAUI 之間的 Xamarin.Forms API 差異降到最低,並確保您在相依性存在時使用 .NET 兼容版本。
Visual Studio 中的快速動作
.NET Upgrade Assistant 有快速動作,可將命名空間轉換成 Xamarin.Forms 適當的 .NET MAUI 命名空間,並顯示為燈泡:
快速動作會跨檔案進行必要的取代。
注意
當您將檔案從 Xamarin.Forms 專案移轉至 .NET MAUI 專案時,會出現快速動作燈泡。
安裝
強烈建議使用Visual Studio 2022 17.6.0版或更新版本來執行升級小幫手。 若要安裝升級小幫手擴充功能:
- 開啟 Visual Studio,然後選取 [延伸模組管理延伸模組>] 功能表項。
- 在 [ 管理擴充功能] 對話框中,搜尋並下載 .NET 升級小幫手。
- 下載延伸模組之後,請關閉 Visual Studio。 接著會安裝擴充功能。
當 Visual Studio Marketplace 有新版本可用時,就會自動更新延伸模組。 如需詳細資訊,請參閱 自動更新擴充功能。
執行升級小幫手
以滑鼠右鍵按兩下 方案總管中的項目,然後選取 [升級]。