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里面基本上依靠约定去解决问题

 

 

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