MVC之TempData、ViewData、ViewBag_.NET_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > .NET > MVC之TempData、ViewData、ViewBag

MVC之TempData、ViewData、ViewBag

 2013/9/12 18:53:25  飛雲若雪  博客园  我要评论(0)
  • 摘要:★ViewData和ViewBag:生命周期相同,仅对当前View有效,不同的是ViewBag的类型不是字典的键值对结构,而是dynamic动态类型。ViewDataViewBagKey/Value字典集合dynamic类型对象从ASP.NETMVC1就有了ASP.NETMVC3才有基于ASP.NET3.5framework基于ASP.NET4
  • 标签:MVC ViewData view

ViewData和ViewBag:生命周期相同,仅对当前View有效,不同的是ViewBag的类型不是字典的键值对结构,而是dynamic动态类型

ViewDataViewBag Key/Value字典集合dynamic类型对象 从ASP.NET MVC1就有了ASP.NET MVC3才有 基于ASP.NET 3.5 framework基于ASP.NET 4.0 framework ViewData比ViewBag快ViewBag比ViewData慢 在ViewData中查询数据时需要转换合适的类型在ViewBag中查询数据时不需要类型转换 有一些类型转换代码可读性更好

  ●ViewData

    ViewData["Title"]="ViewData"; 

  ●ViewBag

    ViewBag.Title="ViewBag";

★TempData

  TempData保存在Session中,Controller每次执行请求的时候,会从Session中先获取TempData,而后清除Session,获取完TempData数据,虽然保存在内部字典对象中,但是其集合中的每个条目访问一次后就从字典中删除,所以TempData只能跨页传递一次。

  !如果我们想读取TempData的值但是又不让它被删除,可以使用TempData.Peek("Key")方法。如果想再保持一次TempData里面的值,可以使用TempData.Keep("Key")。 

   

 

发表评论
用户名: 匿名