认识ASP.NET MVC

一、ASP.NET MVC 的介绍
1、我们都知道ASP.NET 是一个开发框架。并且是一个使用了HTML、CSS、JavaScript和服务器脚本来创建网页和网站的开发框架。那么,MVC又是什么呢?
2、ASP.NET 的开发模式具有三种,MVC就是其中的一种,MVC是Model(模型)、View(视图)、Controller(控制器)的简称;其余两种分别是Web Pages(Web页面)和Web Forms(Web窗体)。
3、MVC是一种使用了Model(模型)、View(视图)、Controller(控制器)设计创建Web应用程序的模式:
(1)Model(模型)是应用程序中用于处理应用程序数据逻辑的部分。通常而言,模型对象负责在数据库中存取数据。
(2)View(视图)是应用程序中用于处理数据显示的部分。通常而言,视图是依据模型数据创建的。
(3)Controller(控制器)是应用程序中用于处理用户交互的部分。通常而言,控制器负责从视图中读取数据,控制用户输入,并向模型发送数据。
(4)MVC分层让我们可以更便捷的管理那些复杂的应用程序。它让我们可以在不依赖业务逻辑的情况下,专注于试图设计。同时也使得程序的测试更加方便。
(5)MVC在分层的同时也简化了分组开发。它让不同的开发人员可以同时去开发试图逻辑、控制器逻辑和业务逻辑。
(6)它们的关系如下图所示:
认识ASP.NET MVC_第1张图片
4、MVC模式同时提供了对于HTML、CSS和JavaScript的完全控制。
二、区域(Areas)
1、使用ASP.NET MVC的区域(Areas)可以实现分部开发和集中部署。而什么是Areas呢?Areas是ASP.NET MVC用来将相关功能组织成一组单独命名空间(路由)和文件夹结构(视图)的功能。使用Areas可以创建层次结构的路由,而它是通过添加另一个路由参数area到Controller和action的。
2、MVC虽然本身就提倡关注点分离。但是当项目本身的业务逻辑足够复杂,且所有的业务逻辑都写在一个Controller文件夹下面的话,我们就会看到一个具有非常庞大的各种命名的控制器的Controller文件夹,因此当我们想要找到一个特定的控制器的时候就不是那么容易找到了。这个时候区域的作用就非常明显了,通过区域将不同的模块加以区分,想找到一个特定的控制器的时候就简单明了、方便快捷了。
3、Areas提供了一种把大型ASP.NET Core MVC Web应用程序分为较小的功能分组的方法。而Areas本身就是应用程序内部的一个有效的MVC结构。
4、在MVC项目中,像Model,Controller和View的逻辑组件是放在不同的文件夹之中的,而MVC是用命名约定来创建这些组件之间的关系的。
5、在ASP.NET Core MVC 项目中Area是被定义成有自己的一套controller,view和model的较小的功能单元。
6、Area的特性:
(1)一个ASP.NET Core MVC 应用可以有任意数量的area;
(2)每个Area都有自己的controller,view和model;
(3)允许把大型MVC项目组织成多个高级组件以便可以独立工作;
(4)支持具有相同名称的多个控制器,但前提是它们不能在同一个areas中,也就是说,它们只能在不同的areas中。
7、对于大型应用,它有利于把应用分割成独立的高级功能的Areas。当有以下情况时则应当考虑在MVC中使用Areas:
(1)你的应用程序应该从逻辑上分隔成多个高级功能的组件的;
(2)你想要分隔你的MVC项目,使每一个功能area可以独立工作的。
三、ASP.NET MVC 的应用程序文件夹
1、我们要知道:所有的MVC应用程序的文件夹都是相同的。
2、MVC框架是基于默认的命名,而标准化的命名不但减少了代码量,而且更有利于开发人员对MVC项目的理解。例如;控制器写在Controllers文件夹中,视图写在Views文件夹中,模型写在Models文件夹中。因此,我们不必再在应用程序代码中使用文件夹名称。
3、下面是对每个文件夹的简单描述:
(1)App_Data文件夹是用来存储应用程序的数据的;
(2)App_Start文件夹是用来设置路由的地方;
(3)Content文件夹是用来存放静态文件的;例如:样式表(CSS文件)、图像和图标。
(4)Controllers文件夹包含了负责处理用户输入和响应的控制器类;
(5)Models文件夹包含表示应用程序模型的类;
(6)Views文件夹是用来存储与应用程序的显示相关的HTML文件(用户界面);
(7)Scripts文件夹是存储应用程序的JavaScript文件。默认情况下,它存放标准的MVC、Ajax和jQuery文件。
4、MVC文件夹的注意点:
(1)MVC要求所有的控制器文件的名称要以“Controller”结尾。
(2)模型是控制和操作应用程序数据的。
(3)每个控制器在Views文件夹中都有一个对应的文件夹。

你可能感兴趣的:(认识ASP.NET MVC)