關於net 6.0全新的宿主模型關於net 6.0全新的宿主模型

關於asp.net 6.0 開始沒有了startup,即採用新的宿主模型,突然一下子還不習慣。阿笨個人的一點思考和看法。🤔

一、個人看法

爲了實現net支持跨平臺微軟經歷了三次大的改變,對於我們開發者來說算是一段比較“混亂”時期吧。阿笨這裏說的“混亂”指的是對asp.net core學習上的變化。

1、net core 2.2之前

2、net core 3.1和net 5.0

3、net 6.0

如果你之前對跨平臺沒有任何的瞭解過,現在直接上手net 6.0的話會感到很困惑,特別是在網上的過程中查閱學習資料的時候,發現net core每個時期內的“寫法”怎麼不一樣,不管是net core自身框架或者使用其他一些第三方組件,變化有點太大了。

這個原因主要是剛好我和視頻面前中的你,同處在這個“混亂”的轉變時期,也許再過5年,10年後,再也沒有人討論.NET以前是不支持跨平臺的這個話題了,到時候在大家的認知意識形態裏面,.NET已經潛移默化的就是跨平臺的一門框架!

net向net core跨平臺的這段歷史終將會慢慢被遺忘。🤔🤔🤔


二、變化點

新的變化點肯定是有的,但是大家也不要恐慌,微軟也只爲大家着想了,儘量的讓我們改造升級的成本最小化,新的框架已經做好了兼容性,同樣也是直接支持以前版本的StartUp宿主模型。怎麼理解這裏的兼容性呢?我們可以直接把net core3.1或net 5.0項目的框架升級爲net 6.0框架即可直接運行。

.net6最大的變化在於Startup.cs和 Program.cs文件,採用的全新的宿主模型。首先要安裝最新版的vs2022+以上版本才能開發.net6項目。

從 ASP.NET Core 5.0 遷移到6.0

https://docs.microsoft.com/zh-cn/aspnet/core/migration/50-to-60?view=aspnetcore-6.0&tabs=visual-studio

最小宿主模型:

1)、大大減少了創建應用程序所需的文件和代碼行數。 只有一個文件需要四行代碼。同時也新增特性最小API模型。

2)、Startup.cs將和 Program.cs 合併到單個 Program.cs 文件中。

3)、使用 頂級語句 來最大程度地減少應用程序所需的代碼。

4)、使用全局 using 指令消除或最大程度地減少所需的 using 語句行數。


三、思考與總結

1、作爲零基礎的初學者還是非常有必要先學一下net core3.1和net 5.0版本框架下的ASP.NET Core宿主模型。全新net 6.0爲了實現跨平臺,它採用的實現基本原理和機制並沒有改變,只是框架使用層面的“精簡”,net core跨平臺本質並沒有改變。對於我們學習是不受影響的,大家千萬不要有一種牴觸和排除的情緒。

2、net 6.0創建默認就是全新的最小宿主模型,都沒不推薦使用原來老的StartUp方式(雖然還是支持兼容),從這點上看微軟是下來決心。

3、如果你之前對net core3.1和.net 5.0有一點的瞭解,那麼學習將是成本最小。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章