一、ASP.NET MVC简介
1、为什么需要MVC设计模式(ASP.NET WebForm的缺点)
1)后端程序逻辑与前端UI高耦合
2)视图状态管理等机制导致网络带宽占用增加
2、适用场景:
1) ASP.NET WebForm适用于基于局域网的web应用程序(ERP, HR, CRM等企业内部管理系统)
2) ASP.NET MVC适用于基于因特网、高并发的中、大型web应用程序(门户网站、电商等)
3、主要概念:
1)组成:Model(模型)、View(视图)和Controller(控制器)
Model:模型是实现应用程序数据域逻辑的应用程序组件
View:视图是显示应用程序用户界面 (UI) 的组件。
Controller:控制器是处理用户交互、使用模型并选择视图来显示界面的组件。
2)作用:用户接口和逻辑层相互分离,以便开发人员更好地关注逻辑层的设计和测试,并使整个程序具备清晰的架构
3) MVC执行流程:浏览器请求->控制器->模型->视图->显示结果
二、创建ASP.NET MVC应用程序
1、步骤:
1)打开VS菜单“文件”-“新建”-“项目”
2)选择“ASP.NET Web应用程序(.NET Framework)”
3)选择项目模板“MVC”
2、ASP.NET MVC 应用程序包含的默认文件和目录:
App_Data:数据的物理存储区,即本地化的数据库文件或数据文件。
App_Start:包含多个静态配置类,执行应用程序的初始化任务
Content:放置应用程序的静态内容,如CSS、可下载的文件及音乐文件等
Controller:放置控制器文件。控制器文件是后缀名为.cs或.vb的类文件
Models:放置数据模型对象的文件,如.cs、.vb、.edmx和.dbml等
Scripts:放置JavaScript、jQuery文件,文件后缀名通常为.js
Views:放置视图文件,文件后缀名为.cshtml或.aspx
Web.config:应用程序配置文件
三、控制器基础
1、主要概念:
1)控制器类名须由Controller结尾。
2)控制器类的基类是Controller类。
3)控制器必须包含至少一个返回值为ActionResult类型的public方法,这类方法称为操作(Action)方法。
2、步骤:
1)选中Controllers目录右键单击Controllers目录,选择“添加”-“控制器”
2)选择“MVC 5控制器–空”基架模板
3)将控制器重命名,如:MyFirstController
4)右键单击MyFirstController类的Index()方法,选择“添加视图”弹出“添加视图”对话框
5)运行项目
四、视图
1、视图基架类型:
Create、Delete、Details、Edit、Empty、Empty(without model)、List
2、模板页面:_ViewStart.cshtml
1)该文件默认位置:/Views/_ViewStart.cshtml
2)_ViewStart.cshtml的特点是“预加载”
3)作用域:对当前目录和当前目录下的所有子级目录生效。
4)存放位置:如果需要对整个模板文件生效,可以直接放在Views目录下,如果只对某个控制器生效,可以放在控制器对应的目录中。
3、模板页面:_Layout.cshtml
1)该文件默认位置:/Views/Shared/_Layout.cshtml
2)_Layout.cshtml通常称为“布局页”、“母版视图”、“模板页”
3)_Layout.cshtml有两段特别的Razor声明:
RenderBody:“body占位符”的作用。子视图页面的所有内容默认填入到_Layout.cshtml的@RenderBody所在位置
RenderSection:作用是“块占位符”。将子页面中定义的代码块填入到_Layout.cshtml的@ RenderSection所在位置