.NET 發展至今,出現了兩種實作 net framework 和 net。
實作 | 版本 | 應用說明 |
.NET .NET Core 1.0-3.1 | .NET5 及其更高版本 | 跨平台,微服務,支援Docker,高性能可擴充,支援并行運作環境,開源 |
.NET Framework .NET | .NET Framework 1.0 - 4.8 | 隻支援Windows平台(除非借助Mono), 不開源,不支援并行運作環境 |
.NET 5 是一個很重要的版本,它将 net framework 和 net core 重新整合在一起,使用統一的名字 .NET 5 (或後續的版本号) 。是net技術棧實作大一統的根基版本。
.NET 6 帶來了許多性能改進和生産力提升,是一個長期支援版本,是真正的具有強大動力的非常重要的版本。
Q:什麼是 asp.net ?
A:ASP.NET 通過專門用于生成 web 應用的工具和庫擴充 .NET 平台,僅支援Windows 。
Q:什麼是 asp.net core ?
A:ASP.NET Core 是運作在 macOS、Linux 和 Windows 上的 ASP.NET 的開放源代碼版本。ASP.NET Core 于 2016 年首次釋出,是對 ASP.NET 早期僅 Windows 版本的重新設計。
ASP.NET Core | ASP.NET 4.x |
針對 Windows、macOS 或 Linux 進行生成 | 針對 Windows 進行生成 |
Razor Pages 是在 ASP.NET Core 2.x 及更高版本中建立 Web UI 時建議使用的方法。 另請參閱 MVC、Web API 和 SignalR。 | 使用 Web FormsSignalR、MVCWeb APIWebHooks 或網頁 |
每個計算機多個版本 | 每個計算機一個版本 |
使用 C# 或 F# 通過 Visual Studio、Visual Studio for Mac 或 Visual Studio Code 進行開發 | 使用 C#、VB 或 F# 通過 Visual Studio 進行開發 |
比 ASP.NET 4.x 性能更高 | 良好的性能 |
使用 .NET Core 運作時 | 使用 .NET Framework 運作時 |
![](https://img.laitimes.com/img/9ZDMuAjOiMmIsIjOiQnIsIyZuBnLygjM5UjN5ATOtUzMwgjMyAjMxUjM3AjMyAjMtUzMxITM18CX3AjMyAjMvwVNzEjMxUzLcd2bsJ2Lc12bj5ycn9Gbi52YuIjMwIzZtl2Lc9CX6MHc0RHaiojIsJye.png)
底部是Host層,它是引導web服務和啟動ASP.NET Core所需的所有的東西,包括日志記錄、配置和服務提供者(service provider),這些對象都是上層需要的依賴項。
Host層之上是中間件層。該層負責處理請求對象,比如錯誤處理、權限控制、HSTS、CORS等等。
此外,還有路由層,它根據定義的路由模式将請求路由到端點endpoints。端點路由是NET Core的新層,它将路由與上面的UI層分離,以支援不同端點的路由,包括Blazor、gRPC和Signal。
實際端點由第四層UI層提供,該層包含著名的UI架構
Blazor
、
gRPC
、
SignalR
和
MVC
。作為ASP.NET Core開發人員,這裡是你主要編碼的地方。
最後,在
MVC
上面,将看到
WebAPI
和
Razor
頁面。
資料:https://docs.microsoft.com/zh-tw/aspnet/core/release-notes/aspnetcore-6.0?view=aspnetcore-6.0