ASP.NET的版本?

問題源於這麼一本書:架構

《ASP.NET 4 解密(卷1)》,這本書大約是六七年前買的了,根據其名字,它講述的是ASP.NET 4,那麼ASP.NET如今到底是什麼版本?與.NET Framework版本的關係是什麼?與.NET Core,ASP.NET Core又有什麼關係?我整理了這麼一張表,可能其中有些瑕疵,但整體八九不離十。併發

時間 Visual Studio .NET Framework ASP.NET ASP.NET MVC .NET Core ASP.NET Core
2002 Visual Studio.NET 1.0 1.0      
2003 Visual Studio.NET 2003 1.1 1.1      
2005 Visual Studio 2005 2.0 2.0      
2006   3.0 3.0      
2008 Visual Studio 2008 3.5 3.5      
2009       1.0    
2010 Visual Studio 2010 4.0 4.0 2.0    
2011       3.0    
2012 Visual Studio 2012 4.5 4.5 4.0    
2013 Visual Studio 2013 4.5.1 4.5.1 5.0    
2014   4.5.2 4.5.2 5.2   ASP.NET 5
2015 Visual Studio 2015 4.6 4.6 5.2.3    
2016         1.0 改名併發布1.0
2017 Visual Studio 2017 4.7     2.0 2.0
  1. ASP.NET是與.NET Framework一塊兒發佈的,它屬於.NET Framework的一部分,它的實現是封裝在System.Web.dll中的,因此能夠認爲.NET Framework的版本就是ASP.NET的版本
  2. 但到了ASP.NET 4.6以後,微軟計劃的下一代ASP.NET是要具有「跨平臺」特性的,也就是說,它並再也不依賴於.NET Framework,這個項目代號爲「ASP.NET vNext」的產品後來一度被稱做ASP.NET 5,直到2016年才被正式改名爲ASP.NET Core併發布1.0版,因此ASP.NET Core並非ASP.NET的繼任者,它架構與ASP.NET相差較大,而且不依賴於System.Web.dll
  3. ASP.NET Core基於.NET Core,它是跨平臺的
  4. .NET Core和ASP.NET Core都是開源的(使用MIT License),而.NET Framework和ASP.NET並不開源
  5. ASP.NET MVC是微軟官方提供給ASP.NET的額外的MVC框架,能夠獨立經過nuget獲取,其最新版是5.2.4(截止2008年3月8日,就是我寫下這段文字的時候),因爲使用普遍,很多人將其與ASP.NET搞混,其實從時間上來看,ASP.NET MVC出現較晚,直到2011年的3.0版本出來,推出了Razor渲染引擎纔算比較成熟,另外ASP.NET MVC是開源的
  6. 另外有一個叫ASP.NET Web API的框架,與ASP.NET MVC框架相似,能夠獨立經過nuget獲取,開發模式與ASP.NET MVC相似,區別在於側重點,Web API注重數據交換而不是頁面渲染
  7. ASP.NET Core中直接包含了MVC及Web API的功能(其實準確的說,應該是你能夠自由選擇其中的各個組件,可謂豐儉由人)

好了,那接下來的問題是:我改選擇什麼?框架

答案顯而易見,確定是最新的ASP.NET Core 2.0了,(事實上,到我寫下這段文字時,它最新版是2.0.4)固然了,前提是你有得選的話,至於.NET好在哪,C#好在哪這種問題,請自行知乎。3d

相關文章
相關標籤/搜索