zoukankan      html  css  js  c++  java
  • ViewData ViewBag TempData

    ViewData和TempData是字典类型,ViewBag是动态类型

    ViewBag其实本质就是ViewData,只是多了层Dynamic控制。所以,使用何种方式完全取决于你个人的爱好。

    ViewBag和ViewData仅针对当前Action中有效,生命周期和View相同。
    TempData: 保存在session中,controller每次执行请求时,会从Session中获取Tempdata(),而后清除session,
    获取完TempData数据,虽然保存在内部字典中。但字典中每个条目访问一次后就从字典中删除。因此Tempdata数据最多只能经过一次controller传递,并且每个元素最多只能访问一次。之后自动删除

    在MVC3開始。视图数据能够通过ViewBag属性訪问。在MVC2中则是使用ViewData。MVC3中保留了ViewData的使用。ViewBag 是动态类型(dynamic),ViewData 是一个字典型的(Dictionary)。

    ViewBag和ViewData的差别:
    ViewBag 不再是字典的键值对结构。而是 dynamic 动态类型。它会在程序执行的时候动态解析。

    所以在视图中获取它的数据时候不须要进行类型转换

    ViewData ViewBag
    它是Key/Value字典集合 它是dynamic类型对像
    从Asp.net MVC 1 就有了 ASP.NET MVC3 才有
    基于Asp.net 3.5 framework 基于Asp.net 4.0与.net framework
    ViewData比ViewBag快 ViewBag比ViewData慢
    在ViewPage中查询数据时须要转换合适的类型 在ViewPage中查询数据时不须要类型转换
    有一些类型转换代码 可读性更好

  • 相关阅读:
    Systemd 指令
    2018年书单
    2017年书单
    Centos7 Devstack [Rocky] 重启后无法联网
    kvm虚拟机操作相关命令及虚拟机和镜像密码修改
    负载均衡原理-转
    用配置文件里面的参数值替换yaml模板中的变量值【python】
    linux工具之sar
    利用系统缓存优化程序的运行效率
    Elasticsearch单机部署
  • 原文地址:https://www.cnblogs.com/cb521413/p/10392888.html
Copyright © 2011-2022 走看看