MVC 编程模型
MVC 是 ASP.NET 开发模型之一。
MVC 是用于构建 web 应用程序的一种框架,使用 MVC (Model View Controller) 设计:
- Model(模型)表示应用程序核心(比如数据库记录列表)
- View(视图)对数据(数据库记录)进行显示
- Controller(控制器)处理输入(写入数据库记录)
MVC 模型同时提供对 HTML、CSS 以及 JavaScript 的完整控制。
MVC 模型通过三个逻辑层来定义 web 应用程序:
- business layer(业务层、模型逻辑)
- display layer(显示层、视图逻辑)
- input control(输入控件、控制器逻辑)
- 模型(Model)
-
模型(Model)是应用程序中用于处理应用程序数据逻辑的部分。通常模型对象在数据库中存取数据。
- View(视图)
-
View(视图)是应用程序中处理数据显示的部分。通常从模型数据中创建视图。
- 控制器
-
控制器是应用程序中处理用户交互的部分。通常控制器从视图读取数据、控制用户输入,并向模型发送数据数据。
MVC 的这种拆分有助于我们管理复杂的应用程序,因为您能够在同一时间关注一个方面。例如,您可以在不依赖业务逻辑的情况下对视图进行设计。同时对应用程序的设计也更加容易。
MVC 的这种拆分同时也简化了分组开发。不同的开发人员可同时开发视图、控制器逻辑和业务逻辑。
MVC 文件夹
典型的 ASP.NET MVC web 应用程序拥有如下文件夹内容:
应用程序信息
- Properties
- 引用
应用程序文件夹
- App_Data 文件夹
- Content 文件夹
- Controllers 文件夹
- Models 文件夹
- Scripts 文件夹
- Views 文件夹
配置文件
- Global.asax
- packages.config
- Web.config
所有 MVC 应用程序中的文件夹名称都是相等的。MVC 框架基于默认的命名。控制器位于 Controllers 文件夹,视图位于 Views 文件夹,模型位于 Models 文件夹。您不必在应用程序代码中使用文件夹名称。标准化的命名减少了代码量,同时有利于对 MVC 项目的理解。
下面是对每个文件夹内容的简要描述:
App_Data 文件夹
App_Data 文件夹用于存储应用程序数据。
Content 文件夹
Content 文件夹用于静态文件,比如样式表(CSS 文件)、图表和图像。
Controllers 文件夹
Controllers 文件夹包含负责处理用户输入和响应的控制器类。
MVC 要求所有控制器文件的名称以 "Controller" 结尾。
Models 文件夹
Models 文件夹包含表示应用程序模型的类。模型存有并操作应用程序的数据。
Views 文件夹
Views 文件夹存有与应用程序的显示相关的 HTML 文件(用户界面)。
Views 文件夹中含有每个控制器对于的一个文件夹。
Account 文件夹包含用于注册并登录用户帐户的页面。
Home 文件夹用于存储诸如首页和关于页之类的应用程序页面。
Shared 文件夹用于存储控制器间分享的视图(模板页和布局页)。
Scripts 文件夹
Scripts 文件夹存储应用程序的 JavaScript 文件。