-
1.什么是MVC
MVC是一种软件开发的方式(M:Model[模型],V:View[视图],C:Controller[控制器]),即模型-视图-控制器,它完全实现了界面显示、业务逻辑、数据存储的分离,理论化地讲就是界面表现和业务逻辑没有耦合。这样的一种程序开发模式易于前后端分离进行开发,互不影响,易于调试。
视图:给用户提供的用户接口(界面)。在ASP.NET MVC中,有两种视图引擎:aspx和razor。
模型:负责与数据库进行交互。
控制器:是一个个实现了Controller接口的C#类,它是MVC程序的业务逻辑。控制器将视图传输的数据进行处理,对模型进行操作。控制器是视图与模型建立联系的桥梁。有了控制器,视图中的数据才能顺利提交到模型,并与数据库进行交互。
-
2.第一个ASP.NET MVC程序
新建项目>>C#~Windows~web>>ASP.NET Web应用程序 .NET Framework>>MVC。
- ASP.NET MVC小常识
Controller文件夹中包含了所有的控制器,右击文件夹即可选择添加控制器。
View文件夹包含了所有的视图,其子文件夹是控制器的名称,每个行为方法对应一个视图。
App_Start中,路由配置文件RouteConfig.cs配置了程序的路由信息,如果想改变起始视图,修改其中的参数即可。
下图就是配置路由信息:执行Home控制器下的Index方法;
-
3.着手第一个MVC小程序
-
新建控制器Test,添加行为方法TestView
- 控制器>>
-
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.Mvc; namespace BroadingTest.Controllers { public class TestController : Controller { // GET: Test public ActionResult TestView() { ViewBag.Info = "我的第一个MVC小程序~"; return View(); } } }
视图>>
-
@{ /*将动态数据转为字符串*/ string info = ViewBag.Info as string; Layout = null; } <!DOCTYPE html> <html> <head> <meta name="viewport" content="width=device-width" /> <title>第一个MVC小程序</title> <style type="text/css"> h1 { font-family:"思源宋体 cn heavy"; font-size:50px; color:lightpink; } </style> </head> <body> <div> @*razor语法进行数据渲染*@ <h1>@info</h1> </div> </body> </html>
-
4.MVC的运用
ASP.NET MVC常常能够结合EntityFramework技术进行快速的程序开发,EntityFramework能够免去繁琐的T-SQL命令的编写,提供强大的lamda表达式进行数据的操作。
ASP.NET MVC也支持许多传统的WebForm技术,例如Session和Application等等。ASP.NET MVC提供了ViewBag[动态数据]、ViewData[键值对数据]以及Model[模型绑定技术]进行前后台传值,强大的Razor语法(@{· · ·})能够实现C#与HTML的杂糅。