你的位置:首页 > 软件开发 > ASP.net > ASP.Net MVC Controller(控制器)

ASP.Net MVC Controller(控制器)

发布时间:2015-09-04 14:00:07
Controller主要负责响应用户的输入。主要关注的是应用程序流,输入数据的处理,以及对相关视图(View)输出数据的提供。继承自:System.Web.Mvc.Controller一个Controller可以包含多个Action. 每一个Action都是一个方法, 返回一个A ...

ASP.Net MVC Controller(控制器)

Controller主要负责响应用户的输入。主要关注的是应用程序流,输入数据的处理,以及对相关视图(View)输出数据的提供。

  • 继承自:System.Web.Mvc.Controller
  • 一个Controller可以包含多个Action. 每一个Action都是一个方法, 返回一个ActionResult实例
  • 一个Controller对应一个xxController.cs控制文件,对应在View中有一个xx文件夹。一般情况一个Action对应一个View页面

Controller Action方法参数与返回值

Action方法接收参数:

发现,只要从TempData中取出一个元素,就会立即将此元素移除!

ASP.Net MVC Controller(控制器)

Model 强类型参数

在控制器里的Action方法最后 调用View加载视图的时候,将 数据对象传入。

return View(model);
当前视图就会继承于 WebViewPage<T> 强类型视图页面类,并且指定T为Student:
ASP.Net MVC Controller(控制器)

 如果没有添加@model指令:当前视图就会继承于 WebViewPage<T> 强类型视图页面类,但T变成了 dynamic

到这里,Controller的数据怎么就传到View了,我明明只给Controller中的ViewData/ViewBag/TempData/赋值了,或者只把对象传给了View方法。

为什么View中就可以直接调用了呢?我们知道以前的get='_blank'>ASP.NET,aspx和aspx.cs是一个继承关系,子类可以直接调用父类的属性方法。你ASP.NET MVC中View和Controller之间又有什么关系呢?

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


原标题:ASP.Net MVC Controller(控制器)

关键词:ASP.NET

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。