[ASP.NET] ASP.NET 5
前陣子在Connect()出現了ASP.NET 5,因而使得許多人有些困惑,ASP.NET 5與目前的ASP.NET,ASP.NET vNext,有什麼不同呢,又或是ASP.NET 5是新的ASP.NET下一個要釋出的版號呢?會不會影響到升級呢?種種的問號隨之而來,在看了幾份文件後,有了一些初步的瞭解,這裡就順手從一個開發人員的角度來整理一下。
ASP.NET 5
就是之前所稱之的ASP.NET vNext,它是ASP.NET MVC, Web Pages, Web API 和 SignalR的下一個版本,運行在.NET Framework 4.6 (以上)或是.NET Core 5,也就說如果您是使用ASP.NET MVC, Web Pages, Web API and SignalR,想升級為ASP.NET 5,那麼您可以選擇在原有的.NET Framework 4.6框架下進行或是採用新一代.NET Core 5。
.NET Framework
分成二個分支走向,一個是原有的.NET Framework持續發展,也就是目前所常聽到的.NET Framework 4.X,新的版本會是.NET Framework 4.6,而另一個走向是.NET Core 5,它是.NET Framework 4.6的子集包含了.NET Framework的核心功能,不像原有的.NET Framework那麼一大包,特點是可以跨平台。
ASP.NET Web Form
若您是以ASP.NET Web Form為主要開發技術,那麼基本上就是維持目前的.NET Framework發展走向,現階段.NET Core 5與ASP.NET Web Form無關,主要是因為ASP.NET Web Form依賴System.Web太深,目前並無法將它拆解出來,未來有沒有可能則不太清楚,但可想而知的是這會是一個很大的工程,有可能是整個打掉重做,如果有那麼一天那或許整個Web Form的機制可能跟現在完全不同,開發上也會有所不同。
ASP.NET MVC
若您是以ASP.NET MVC為主要開發技術,那麼您可以選擇在原有的.NET Framework持續走下去,或是為了要跨平台而改以.NET Core 5進行。
.NET Core 5
不依賴System.Web,以面向雲端和跨平台為出發點,重新設計組合,是原先.NET Framework的子集,採用.NET Core 5的應用程式將可以在 Linux 與 Mac運行。
從下面這張圖可以明顯的看出來,ASP.NET 5是在二個.NET Framework分支項下,而ASP.NET 5總的來說是ASP.NET MVC, Web Pages, Web API 和 SignalR的新版本,所以ASP.NET MVC, Web Pages, Web API 和 SignalR皆可以在這二個.NET Framework分支項下運行,而Web Form就不行囉。
更詳細的資料可以參考以下連結
http://blogs.msdn.com/b/dotnet/archive/2014/11/12/announcing-net-2015-preview-a-new-era-for-net.aspx
http://blogs.msdn.com/b/dotnet/archive/2014/12/04/introducing-net-core.aspx
http://blogs.msdn.com/b/dotnet/archive/2014/11/12/net-core-is-open-source.aspx
http://www.asp.net/vnext/overview/aspnet-vnext/aspnet-5-overview
By No.18