TempData也是字典,所以它的使用完全等同于ViewData,但两者之间还是存在很大的差异。 TempData,顾名思义,就是临时数据。TempData保存在Session中,Controller每次请求的时候都会从Session中获取TempData,然后清除Session。基于这样的事实,在每次请求结束后,TempData的生命周期也就结束了。网上有一句话:TempData至多之只能通过一次Co...
ViewData["Items"] = items; 赋值后的ViewBag和ViewData都是字符串数组形式。如下图: 只是ViewData为object型,而ViewBag为dynamic型。而dynamic型与object型的区别则是在使用时它会自动根据数据类型转换,而object型则需要我们自己去强制转换。比如上面我们遍历ViewBag.Items时,它自动根据数据类型转换,而ViewData则需要我...
在MVC3开始,视图数据可以通过ViewBag属性访问,在MVC2中则是使用ViewData。 MVC3中保留了ViewData的使用。 ViewBag 是动态类型(dynamic),ViewData 是一个字典型的(Dictionary)。 它们的定义如下: public dynamic ViewBag { get; } public ViewDataDictionary ViewData { get; set; } 1. 2. 控制器中代码: public ...
1、ViewData ViewData的生命周期和View相同, 只对当前View有效。 2、TempData TempData保存在Session中, Controller每次执行请求的时候会从Session中获取TempData并删除Session。 获取完TempData数据后虽然保存在内部的字典对象中。 但是TempData集合的每个条目访问一次后就从字典表中删除。 也就是说TempData的数据至多只能经过...
viewbag viewdata tempdata的区别 1 在asp.net mvc程序设计中,传递数据常常会用到viewdata、viewbag、tempdata,这3个对象都可以用来传递数据,但他们在细节中有很多的不同之处。ViewData:ViewData是一个字典集合,通过key值读取对应的value使用方法:ViewData["myname"]="张三"ViewBag:ViewBag是动态类型,作用和...
Temp data -在不同的控制器或动作间转换时保持数据。另外,进行页面转向时,tempdata可以保持数据。它是...
在ASP.NET MVC中,页面间Controller与View之间主要有以下几种小量数据的传值方式:ViewData、ViewBag、TempData和Session变量。 下面就这四种传值方式做出详细介绍。 一、ViewData ViewData是一个继承自ViewDataDictionary类的Dictionary对象,它只能存储String Key/Object Value字典数组。
ViewBag:ViewBag是动态类型,作用和ViewData一样,都是用来存储信息,有一些不同的是ViewData是object类型,ViewBag是动态类型,从运行效率上来讲,ViewBag高于ViewData。在实际开发中,通不只用其中一种。使用方法:ViewBag.data="张三"TempData:跨请求数据传递,它的机制类似于Session对象,不同的页面之间...
Asp.net MVC中ViewData、ViewBag和TempData区别 2013-04-18 10:01 − 1.ViewData和ViewBag ViewBag和ViewData生命周期相同,仅对当前View有效,不同的是ViewBag的类型不再是字典的键值对结构,而是dynamic动态类型。 2.TempData TempData保存在Session中,Controller每次执行请求的时... 一路前行 0 466 ViewData ...
ViewBag 其实是对 ViewData 的封装, 其 内部其实是使用 ViewData 实现数据存储的。唯一的不同点是,ViewBag 可以存储动态类型(dynamic)的变量值, 而 ViewData 只能存储 String Key/ObjectValue 字典数组。 TempData & Session TempData 也是一个 String Key/Object Value 字典数组。和ViewData 与 ViewBag 不同的是...