ASP.NET Web 窗體和 ASP.NET 網頁
ASP.NET Web 窗體和 ASP.NET 網頁有什麼區別?
這裡它說網頁和 Web 表單是不同的方法。
有三種 ASP.NET Full 版本,還有 ASP.NET Core(適用於 Linux 和 Mac 的新版本)。
對於 ASP.NET 完整版
第一個是最古老的,稱為 Web 表單。基本上,它是一個高級的面向組件的 Web 框架,可與封裝行為和視圖的按鈕和網格等控制項一起使用。
它是最流行的 ASP.NET 風格,但因缺乏對生成的標記的控製而受到批評。目前大多數新項目都是 ASP.NET MVC,但肯定有很多 Web 窗體程式碼。雖然這是我個人的最愛,但我必須指出,這是開始學習 Web 程式的一種不好的方式,因為它對您隱藏了實現細節(當您有經驗時這很好)並且學習起來有點複雜。
來源:http ://www.asp.net/web-forms
ASP.NET MVC 是 ASP.NET 的 MVC 模式的實現。一些人聲稱,與使用 Web 窗體相比,使用此框架開發具有單元測試和良好關注點分離的可維護應用程序更容易。
我不同意這一點,並認為使用像 MVP 這樣的模式可以通過 Web 表單實現相同的效果。另一方面,ASP.NET MVC 有一個很大的優勢——它允許完全控制生成的標記。這對於使用 JavaScript 控制很多東西的現代 Web 開發風格非常重要。例如,在 MVC 視圖上添加精美的動畫比在 Web 窗體上更容易。
ASP.NET Web Pages 是(目前)針對小型項目和初學者開發人員(至少在我看來)的最新版本。它適用於開發約 10 頁的小型項目。大多數邏輯都寫在每頁的一個文件中,我稱之為“基本 PHP 樣式”。它使用Razor語法來注入伺服器端程式碼。
來源:http ://www.asp.net/web-pages
請注意,Web 窗體使用頁面(與 MVC 不同),因此 ASP.NET 網頁是什麼存在混淆。
對於 ASP.NET Core,使用了新版本的 ASP.NET MVC,它在概念上與上述 ASP.NET MVC 相同。有趣的是,從 ASP.NET Core 2.0 開始,還有一種稱為Razor Pages的東西,它本質上是 ASP.NET 網頁的更高級版本。