在 Xamarin(.Forms) 中使用 C# 9.0 開發 App

在 .NET 5 已正式推出且 .NET 6 即將於 2022年初(?) 現真身的這個時候,對於 .NET 所面向的各種執行平台預設對應撰寫 C# 的語言版本也有所差異。 

(上圖取自 "Enabling C# 9 in Xamarin & .NET Standard Projects" 網頁內容)

 

按照上表的 Xamarin(.Forms) 所用的是預設 C# 語言 7.3 版本,很多捧友就醬以為無法用 C# 9.0 新語法來開發,這可是不對的唷~~~

 

蛤?那要如何改呢? 請看本回介紹~~~


 

首先,先開啟一個基本的 Xamarin(.Forms) 的專案。

 

接著在 .Forms 的專案檔上的右鍵選單中,點選 "編輯專案檔"。

 

接著會看到 .Forms 專案檔的 XML 相關標記撰寫,注意到 <PropertyGroup> 標記當中的 <TargetFramework> 標記指定 .NET Standard 2.0 的編譯環境。

 

因此參照上表的對照,會得知預設是使用 C# 7.3 的語法作為開發的 C# 語言版本。

 

接著在 <PropertyGroup> 標記中增加 <LangVersion> 的標記並且設定為 9.0,如下圖:

存檔完成專案檔的之後,該專案就能開始使用 C# 的 9.0 新語法囉! 

 

在此用 record 類型 作為代表,其他 C# 9.0 的新語法功能,捧友可以再自行試試看囉😎

 

接著在 Visual Studio 當中 "重建方案" 看看。

 

恭喜,全部重建成功!

 

以上介紹供各位捧友參考囉🤗

 

而若要在 Xamarin Native 的開發撰寫上,使用 C# 9.0 的語法也是使用類似的作法。

在該專案當中編輯專案檔(需先在 Visual Studio 當中卸載專案)找到 <PropertyGroup> 標記,在其中加入 "<LangVersion>9.0</LangVersion>" 標記,存檔後再重新載入專案就可以了唷!


 


I'm a Microsoft MVP - Developer Technologies (From 2015 ~).
MVP_Logo

I focus on the following topics: Xamarin Technology, Azure, Mobile DevOps, and Microsoft EM+S.

If you want to know more about them, welcome to my website:
https://jamestsai.tw 


相關 Xamarin(.Forms) 推廣活動與課程,請詳見下列 Accupass (活動通) 列表:
https://www.accupass.com/organizer/detail/1910170752158115281580
 

本部落格文章之圖片相關後製處理皆透過 Techsmith 公司 所贊助其授權使用之 "Snagit" 與 "Snagit Editor" 軟體製作。