标签:就是 读取 字典 context provider cti contex 区别 ima
1、MVC中的TempData\ViewBag\ViewData区别?
答:页面对象传值,有这三种对象可以传。
(1) TempData 保存在Session中,Controller每次执行请求的时候,会从Session中先获取 TempData,而后清除Session,获取完TempData数据,虽然保存在内部字典对象中,但是其集合中的每个条目访问一次后就从字典表中删 除。具体代码层面,TempData获取过程是通过SessionStateTempDataProvider.LoadTempData方法从 ControllerContext的Session中读取数据,而后清除Session,故TempData只能跨Controller传递一次。
(2) ViewBag和ViewData只在当前Action中有效,等同于View
(3)ViewData和ViewBag 中的值可以互相访问,因为ViewBag的实现中包含了ViewData
2、ASP.NET和ASP.NET MVC的关系
答:
ASP.NET MVC是ASP.NET的子集
从mvc的核心命名空间System.Web.Mvc就能看出,因为System.Web是Asp.NET的核心命名空间。
ASP.NET MVC是在核心ASP.NET基础之上构建的。
具体体现在以下方面
(1)ASP.NET MVC依赖于HttpHandler
关于请求是怎么进入控制器的,其实就是用到了HttpHandler
(2)Session、Cookie、Cache和Application这些ASP.NET的对象保存机制在MVC中依然是需要用到的
(3)HttpContext、Request、Response、Server对象在MVC中仍然可以使用,在Controller中通过智能感知的形式很容易得到这些对象
(未完待续。。。。)
标签:就是 读取 字典 context provider cti contex 区别 ima
原文地址:https://www.cnblogs.com/schangxiang/p/11279123.html