.NET Standard

.NET Standard

.NET Standard是一套正式的 .NET API (.NET 的應用程式編程接口)規範。 推出 .NET Standard 的背後動機是要提高 .NET 生態系統中的一致性。 2017年6月,微軟正式發布.NET Standard 2.0。

主要功能

.NET Standard .NET Standard

.NET Standard應當被視作一種用於描述“至少在API接口方面需要選擇哪一具體的實現,例如.NET Core、Mono、Xamarin或.NET 4.6”的規範。換句話說,.NET Standard本身並非一種實現,而是由.NET底層平台實現的。例如他認為,.NET Core實現了當前版本的.NET Standard 1.6版,而他認為.NET Core 1.2將非常接近.NET Standard 2.0,使其成為.NET Standard 1.6的超集 。

從實現的角度來看,.NET Standard採取了與傳統.NET略微不同的方法。實際上.NET Standard針對每個特定平台的實現還提供了可充當類型轉發器(Type forwarder)的.NET Standard DLL。應用程式只需要引用類型提供程式(Type provider)DLL,即可將引用轉發給能提供所需實現的相應程式集(Assembly)。相比.NET程式集,這種做法提供了類似的用戶體驗,但在實施者(Implementer)方面有很大不同,因為它們可以分別提供獨立的程式包,而非像.NET運行時程式包那樣提供一個單一的整體 。

.NET Standard 可實現以下重要情境:

•為要實現的所有 .NET 平台定義一組統一的、與工作負荷無關的 BCL API。

•使開發人員能夠通過同一組 API 生成可在各種 .NET 運行時中使用的、可移植的庫。

•減少並有望消除由於 .NET API 方面的原因而對共享原始碼的條件性編譯(僅適用於 OS API)。

•各種 .NET 運行時實現的是特定版本 .NET Standard 。 每個 .NET 運行時版本將會公布它所支持的最高 .NET Standard 版本,這種聲明意味著它也支持以前的版本。 例如,.NET Framework 4.6 實現 .NET Standard 1.3。也就是說,它會公開在 .NET Standard 版本 1.0 到 1.3 中定義的所有 API。 同樣,.NET Framework 4.6.1 實現 .NET Standard 1.5,而 .NET Core 1.0 則實現 .NET Standard 1.6。

平台支持

下表列出了 .NET Standard 的所有版本及其支持的平台 :

Standard1.01.11.21.31.41.51.62.0
.NET 核心1.01.01.01.01.01.01.02.0
.NET framework(包含工具 1.0)4.54.54.5.14.64.6.14.6.2vNext4.6.1
.NET framework(包含工具 2.0)4.54.54.5.14.64.6.14.6.14.6.14.6.1
Mono4.64.64.64.64.64.64.6vNext
Xamarin.iOS10.010.010.010.010.010.010.0vNext
Xamarin.Android7.07.07.07.07.07.07.0vNext
通用 Windows 平台10.010.010.010.010.0vNextvNextvNext
Windows8.08.08.1
Windows Phone8.18.18.1
Windows Phone Silverlight8.0

產品發布

微軟在本月早些時候召開的 Build 2017 開發者大會上的披露的 XAML Standard 和 .NET Standard 2.0,現已正式發布。新工具旨在為開發者們帶來“基於同一標準的跨平台 XAML 語言結構”(基於 UWP 和 Xamarin.Forms),以及基於社區反饋帶來基於 .NET 的精選大集,用戶們有望在“2017年晚些時候”接觸到 Xamarin.Forms 和 UWP 加持的 XAML 標準套用。

相關詞條

熱門詞條

聯絡我們