ASP.NET MVC基礎簡介(一)

ASP.NET MVC簡介

什麼是ASP.NET MVC

         HttpHandler是ASP.net的底層機制,如果直接使用HttpHandler進行開發難度比較大、工作量大。因此提供了ASP.Net MVC、ASP.Net WebForm等高級封裝的框架,簡化開發,他們的底層仍然是HttpHandler、HttpRequest等這些東西。比如ASP.Net MVC的核心類仍然是實現了IHttpHandler接口的MVCHandler。

  1. 在之前模仿過的兩個項目中《超市管理系統》和《學生管理系統》採用的是兩個不同的框架:Winform框架和WPF框架。

  2. 這兩個項目採用的設計模式:三層和抽象三層

  3. 採用設計模式的好處:是爲了分工明確,例如學生管理系統在CS版本使用的Winform做前臺界面,在WebForm中直接可以將CS版本中的BLL/DAL/Model/Common這些dll文件直接拿過來就可以使用。相當於直接可以將前臺界面替換爲ASP.NET中的WebForm頁面

  4. 但是在BS項目中ASP.NET Webform版本的學員管理系統中遇到的問題是:有些同學根本不擅長頁面設計,因此做出的系統界面十分醜陋。因此在目前的開發中要求:前後端分離(前端工程師只需要負責HTML+CSS+JS,後端工程師只需要負責SQL+C#邏輯)

  5. 而WebForm框架存在的問題:首先是服務器控件十分繁瑣,其次前後端相連甚密,頁面中任何空間發生姓名或ID的改變都會導致程序崩潰

  6. 爲了實現前後端技術的徹底分離,逐漸衍生出的一種技術就是MVC

  7. MVC在任何技術中都存在只是叫法不一致。

    在ASP.NET中叫:ASP.NET MVC

MVC的發展史

MVC的版本

  1. 1.0:基於.NET3.5 VS2008(核心功能)

  2. 2.0:基於.NET3.5、4.0 VS2010(分區項目、模型元數據、模板視圖...)

  3. 3.0:基於.NET4.0 VS2010、VS2012(視圖引擎:Razor、H5和CSS3)

  4. 4.0:基於.NET4.0、4.5 VS2012、VS2013(手機模板、單頁應用程序模板)

  5. 5.0:基於.NET4.5.1 VS2013、VS2015

  6. 6.0;基於.NET4.5.1-4.8 VS2017、VS2019(只剩Razor視圖引擎)

ASP.NET開發模式

Model負責在View和控制器之間進行數據的傳遞:用戶輸入的內容封裝爲Model對象,發給Controller;

要顯示的數據由Controller放到Model中,然後扔給View去顯示。

WebForm和MVC的關係

都是對HttpHandler的封裝框架,ASP.net WebForm是微軟爲了讓開發ASP.Net像開發WinForm一樣傻瓜化發明的框架,有很多缺點;ASP.net MVC採用了MVC的思想,更適合現代項目的開發,因此ASP.net MVC在逐步取代ASP.Net WebForm。

在MVC中不存在ViewState

爲什麼ASP.NET MVC更好

程序員有更強的掌控力,不會產生垃圾代碼;程序員能夠更清晰的控制運行過程,因此安全、性能、架構等更清晰。WebForm和ASP.netMVC在“入門”和“深入”兩個要素之間正好相反。

ASP.NET MVC與“三層架構”

ASP.net MVC與“三層架構”沒有任何的關係。三層架構中的UI層可以用ASP.Net MVC來實現。可以理解爲MVC其實是對UI層進行再次分層

約定大於配置

“約定大於配置”:噁心的“配置文件地獄”,基礎階段按照默認配置來,先不管複雜、難懂的“路由”等。

配置可以理解爲配置文件,MVC裏面基本上依靠約定去解決問題

 

 

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