MVC体系结构将应用程序分成三个主要组件:模型(Model)、视图(View)、和控制器(Controller)。在ASP.NET MVC应用程序中,数据操控的逻辑包含在Models文件夹下,数据的展示逻辑包含在Views文件夹下,处理用户请求和输入的逻辑包含在Controller文件夹下。
1、模型
模型对象是实现应用程序数据域逻辑的应用程序部件,一般检索模型状态并将其存储在数据库中。例如,Student对象从数据库中检索和操作该信息,然后将更新的信息写到数据库的Student表中。
2、视图
视图是显示应用程序用户界面的组件。此时UI一半是用模型数据创建的。例如,文本框等编辑界面。
3、控制器
控制器是处理用户交互的组件。
优点:
1,任务分离;2对HTML的操控能力更高;3,基于测试驱动的开发,即创建mvc应用程序时可以同时创建测试应用。
应用程序的结构
文件夹名称 | 说明 |
App_Data | 保存SQL Server Express 数据库文件 |
Content | 存储静态文件,如级联样式表文件、主题、图像等 |
Controllers | 存储控制器代码。注意MVC框架要求所有控制器名以“Controller”结尾,如LoginController |
Models | 为MVC应用程序模型的类提供的文件夹。 |
Scripts | 存储脚本文件。默认情况下,此文件夹包含ASP.NET AJAX基础文件和jQuery库。 |
Views | 存储视图文件。在Views文件夹中,每个控制器都有一个文件夹,文件夹以控制器名称前缀命名。例如,控制器名为LoginController,则在Views文件夹包含名为Login的文件夹。 |
Views/Shared | 默认情况下,Views文件夹中也有一个名为Shared文件夹。该文件夹不与任何控制器相对应。它用于存储多个控制器之间共享的视图。例如母版页 |
Global.asax文件,它的代码是来设置全局URL路由默认值,并且用Web.config文件来配置应用程序。
MVC Web项目执行阶段
接收对应用程序的第一个请求(在Global.asax文件中,设置Route对象) ——> 执行路由 ——>
创建MVC请求处理程序 ——> 创建控制器 ——> 执行控制器 ——> 调用操作 ——> 执行结果