想问一下.net mvc的数据流怎么流向,不是mvc框架。controller -->view层数据如何流动,在view层怎么接受controller层的数据。
你的controller的每个Action都返回一个ActionResult, 如果是返回一个View展现数据的话,就是一个ViewResult(继承自ActionResult)。举例:
public class HomeController
{
public ActionResult Index()
{
var model = new { Message = "hi" };
return View(model);
}
}
action的代码执行完成以后,得到一个ActionResult对象(本例中是一个它的子类ViewResult),它包含ExecuteResult方法。在ViewResult的ExecuteResult方法里,它寻找view代码里的<% %>代码段,然后解析它,把model里对应的字段填充进去,最终转成html代码作为response返回给浏览器。所有这些都是通过反射调用的。
谢谢回答。如果自己写这个流程的话,数据该怎么获取(不用框架)??
@灵犀一指: 你想自己写?啥意思?什么叫“自己写这个流程”?
@水牛刀刀: 就是用自己写的代码够建系统的mvc模式
viewbag,tempdata.貌似是这些?
嗯,看看.net mvc的源码
在view层怎么接受controller层的数据
当前View 直接用ViewBag 或者 ViewData 其它View用 TempleteData吧
Controller中Action接受客户端请求,开始处理Model,然后把处理后的model或调用的model,传递给view,由ViewEngin把mode中的数据和view糅合再一起,生成html返回给客户端。