微軟對ASP.NET Core進行重大更新,其中包括使用專案的框架組成、與.NET Core更緊密的整合,以及第三方開源套件整合,這些改進都要協助開發者更快速的完成開發工作。

專案參照以及運作的方式,已經隨著ASP.NET Core版本發展改變。在1.0當中,ASP.NET Core本身就只是套件,而使用在其他的專案的方式,就如同NuGet套件參照,這樣的方式有其利弊,隨著發展到了2.1,ASP.NET Core最終演變為可作為.NET Core的共享框架,而ASP.NET Core 3.0持續朝此方向進行改變,因而刪除了Json.NET以及Entity Framework Core。

對於目前仰賴Json.NET功能的部分,微軟會持續提供整合的套件,預設將改為使用即將釋出的JSON API。而Entity Framework Core則將會在3.0中以純NuGet套件的形式釋出,這會使其與其他在.NET上的資料存取函式庫相同,並繼續以最簡路徑為各式.NET平臺使用者提供支援。執得注意的是,將Entity Framework Core移出共享框架,並不影響其作為微軟開發、支援和可維護函式庫的狀態,仍繼續受.NET Core核心支援政策規範。

由於在未來,.NET Framework將獲得.NET Cor較少的新平臺和語言功能,且因為.NET Framework的就地更新特性,這將使既存應用程式受到影響。為了確保ASP.NET Core能夠充分利用.NET Core的改進,從3.0開始,ASP.NET Core將僅在.NET Core上運作,目前仍在.NET Framework上使用ASP.NET Core的使用者,可以使用2.1 LTS版本以繼續獲得完全的支援,而2.1的支援服務將持續到2021年。

另外,在ASP.NET Core 3.0中,微軟也對構成平臺的內容做出更明確的區分,與此同時從該層中刪除第三方元件,微軟提到,開源元件能更好的支援和建構許多高階的使用情境,因此微軟將協助社群把這些第三方開源元件整合進ASP.NET Core應用程式,這種支援將採用不同的形式,包括由微軟團隊建構整合API和套件。其實微軟從ASP.NET Core 2.2版本就已經開始這個程序,為熱門的IdentityServer函式庫開發了新的整合,這將幫助ASP.NET Core應用程式的API授權提供簡單實用的情境,允許使用者充分了解IdentityServer的完整能力。

微軟也簡化建構HTTP API的方法,新的API Conventions和分析器將可以更簡單的使用開源API函式庫諸如Swashbuckle和NSwag,而且還新增了API客戶端產生系統,能更簡單得整合AutoRest或NSwag等程式碼產生器。


Advertisement

更多 iThome相關內容