MVC基础知识-Controller

新建xxController继承自:System.Web.Mvc.Controller

一个Controller可以包含多个Action. 每一个Action都是一个方法, 返回一个ActionResult实例

一个Controller对应一个xxController.cs控制文件,对应在View中有一个xx文件夹,用于存放xxController下Action对应的View文件。一般情况一个Action对应一个View页面

 

Action方法输出返回值:

1.string:直接 返回响应报文字符串;

2.ActionResult:返回控制器结果对象

3.JsonResult:返回 Json 字符串

 

控制器将处理后的数据“传”给视图的方式

ViewData/ViewBag/TempData/Model

public ActionResult Index()
{
Employee data = new Employee();
data.Name = "张三";
data.Age = 26;
ViewBag.UserName = "白子画";
ViewData["UserName"] = "花千骨";
TempData["UserName"] = "杀阡陌";//临时数据
return View(data); //这行代码其实就相当于ViewData.Model=model
}

输出结果为:

Model其实就是ViewData.Model

 

第一个ViewBag.UserName 将被 ViewData["UserName"] 覆盖,最后的结果不会输出“白子画”

因为ViewData和ViewBag本质上都是【ViewDataDictionary】类型,并且两者之间的数据共享,只不过提供了不同的语法操作方式而已

Controller传数据到View

给Controller中的ViewData/ViewBag/TempData/赋值了,或者把对象传给了View方法

View和Controller中都有ViewData/ViewBag/TempData这几个对象,在给Controller中这些对象赋值后,Controller会把这些值赋值給View中对应的这几个对象


posted @ 2016-08-10 11:22  秦小鹤  阅读(1265)  评论(0)    收藏  举报