.Net Framework、.Net Core和.Net Standard的區別


最近在使用Visual Studio 2019創建C#類庫的時候,發現可以分別創建以下幾種類庫

.Net Core.Net Framework我是知道的,這個.Net Standard是啥,就覺得有點奇怪。貌似以前用VS2015的時候沒看到啊,VS2017是有的,只是當時不在意。

找了一下,原來在Visual Studio 2015的時候是叫可移植類庫,如下

然后到屬性頁里修改為.Net Standard

 那區別是什么呢,如下

.Net Core:.NET Core 是一個開源、跨平台的開發平台,可以用來構建現代、可伸縮和高性能的跨平台軟件應用程序的,包括Asp.Net CoreWPFWInform等.Net Core可以使用C#Visual BasicF#來進行開發。這里理解為.Net的跨平台版本,適合現在流行的Web、移動、雲服務、微服務等方向的開發。

.Net Framework:這里直接理解為.Net的標准版本,從.Net Framework1.0到今天的.Net Framework4.8

.Net Standard:.NET Standard 是一套正式的 .NET API 規范,等於是一套規范,.Net Core也好,.Net Frameworkd也好,都必須都實現這個規范。

 例如,.NET Framework 4.6 實現 .NET Standard 1.3。也就是說,它會公開在 .NET Standard 版本 1.0 到 1.3 中定義的所有 API。 同樣,.NET Framework 4.6.1 實現 .NET Standard 1.4,而 .NET Core 1.0 則實現 .NET Standard 1.6。

目前.Net Framework實現的最高.Net Standard版本是2.0。

詳細可見下表

.NET Standard 1.0 1.1 1.2 1.3 1.4 1.5 1.6 2.0 2.1
.NET Core 1.0 1.0 1.0 1.0 1.0 1.0 1.0 2.0 3.0
.NET Framework 1 4.5 4.5 4.5.1 4.6 4.6.1 4.6.1 2 4.6.1 2 4.6.1 2 N/A3

參考:

https://docs.microsoft.com/zh-cn/dotnet/standard/net-standard

https://devblogs.microsoft.com/dotnet/announcing-net-standard-2-1/


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM