.NET标準庫将我們的代碼帶入更多平台,并為基礎類庫提供更多API,進而建構出驚人的應用程式。開發人員已經能夠使用Xamarin的.NET标準庫來跨平台共享代碼,并且使用Xamarin.Forms長久地在iOS,Android,UWP,macOS之間建立一個共享的使用者界面。當組合起來時,.NET Standard和Xamarin.Forms是天堂之間的比對,用于最大化我們可以在我們的底層業務邏輯以及使用者界面層中跨平台共享的代碼量。
在這篇博文中,您将學習如何組合.NET Standard庫和Xamarin.Forms來最大限度地提高代碼共享和生産率。
.NET标準的東西是什麼?
.NET标準是旨在在所有.NET運作時(如.NET Framework,Mono和.NET Core)上可用的.NET API的正式規範。 實際上,您可以将其視為一種簡化但尚未擴充的便攜式類庫。 添加到.NET标準庫的任何代碼都可以在支援.NET标準平台的任何運作時上使用。 此外,我們可以擴充通路.NET基類庫中的API,支援更多的平台,而且我們也不必處理PCL配置檔案的瘋狂。

将Xamarin.Forms引入.NET标準
Xamarin.Forms 2.3.5-pre release增加了與.NET Standard的相容性。 除了共享項目和便攜式類庫之外,您還可以将.NET标準庫添加到代碼共享工具帶。
檔案-> 建立
讓我們開始建立一個新的Xamarin.Forms應用程式。 如果您已經有一個現有的Xamarin.Forms應用程式要遷移到.NET Standard,則可以直接跳到下一步。
在Visual Studio中,點選檔案 -> 建立工程 -> 跨平台 -> 跨平台應用程式。 選擇Master Detail,點後點選确定K。 這将為使用Xamarin.Forms的iOS,Android和UWP建立一個腳手架移動應用程式,它将清單中的一些資料顯示為常見的移動開發方案。
在Visual Studio(Mac)版中,您可以通過如下操作轉到建立類似的模闆 檔案 -> 建立 -> 多平台 -> 視窗應用程式。
添加.NET标準庫
将.NET标準庫添加到您的應用程式是非常簡單的; 它的作用就像将任何其他庫添加到您的項目中!
如果您使用Visual Studio 2017,右鍵單擊該解決方案并單擊添加 -> 新項目。導航到.NET标準部分并添加.NET标準項目。
使用Visual Studio for Mac的開發人員可以通過導航到Multiplatform - > Library - > .NET Standard Library來建立.NET标準庫。如果您使用的是Visual Studio 2015,請務必按照我們的入門指南建立并将便攜式類庫轉換為.NET标準庫。
将Xamarin.Forms添加到.NET标準庫
就像便攜式類庫一樣,我們可以将NuGets添加到.NET标準庫。 通過右鍵單擊項目并選擇管理NuGet軟體包打開NuGet軟體包管理器。 切換到浏覽頁籤,選擇包括預發行,并搜尋Xamarin.Forms。 在本部落格釋出時,隻有Xamarin.Forms的預發行版本與.NET Standard相容,盡管下一個穩定版本中可能會包含.NET Standard相容性。
在每個其他項目(如iOS,Android,UWP等)中,更新到最新的預發行版Xamarin.Forms NuGet,添加對我們建立的.NET标準庫的引用,并删除對共享項目的引用, PCL包含您的Xamarin.Forms UI邏輯。
最後,如果要遷移,請将檔案從共享項目或PCL複制到.NET标準庫。 而已! 您現在正在使用帶有Xamarin.Forms的.NET标準庫來共享代碼:
結束語
在這篇博文中,我們建立了一個全新的跨平台移動應用程式,并使用.NET标準庫作為代碼共享政策來達到所有平台。 要了解有關Xamarin的.NET Standard(不包含Xamarin.Forms)的更多資訊,請檢視我們的.NET标準支援部落格。 如果您仍然對所有.NET标準感到好奇,建議您檢視Immo Landwerth的入門視訊,閱讀docs.microsoft.com上的文檔,或者按照GitHub的說明。