1.ViewData

1.1 ViewData继承了IDictionary<string, object>,因此在设置ViewData属性时,传入key必须要字符串型别,value可以是任意类型。

1.2 ViewData它只会存在这次的HTTP要求而已,而不像Session可以将数据带到下HTTP要求。

    public class TestController : Controller{public ActionResult Index(){ViewData["msg"] = "123123";return View();}}

@{ViewBag.Title = "Index";
}<h2>页面</h2>
<h2>@ViewData["msg"]</h2>

2.ViewData的扩张属性ViewData.Model

    public class TestController : Controller{public ActionResult Index(){User aa = new User() { Age = 1, Name = "linq" };//ViewData.Model = aa;return View(aa);}}

@{ViewBag.Title = "Index";
}
@model MvcApplication1.Models.User
<h2>页面</h2>
<h2>@Model.Age</h2>
<h2>@Model.Name</h2>

3.ViewBag

3.1 严格来说ViewBag和ViewData的区别就是ViewBag是dynamic动态型别

    public class TestController : Controller{public ActionResult Index(){User aa = new User() { Age = 1, Name = "linq" };ViewBag.User = aa;return View();}}

@{ViewBag.Title = "Index";
}<h2>页面</h2>
<h2>@ViewBag.User.Age</h2>
<h2>@ViewBag.User.Name</h2>

4.TempData

4.1 TempData的信息在"一次网页要求内有效"(ActionResult的返回类型必须为RedirectToRouteResult或RedirectToRouteResult类别,除此以外只要有取用的TempData的键值,默认就会在当次网页就要求清除,但你只是单纯设置了TempData的值,并没有读取行为的话,TempData还是会保留到下次使用)

    public class TestController : Controller{public ActionResult Index(string msg){TempData["msg"] = msg;return RedirectToAction("Index2");}public ActionResult Index2(){return View();}}

转载于:https://www.cnblogs.com/lgxlsm/p/5484185.html

ASP.NET MVC中ViewData、ViewBag和TempData相关推荐

  1. 几句话说明 .NET MVC中ViewData, ViewBag和TempData的区别

    ViewData和TempData是字典类型,赋值方式用字典方式, ViewData["myName"]  ViewBag是动态类型,使用时直接添加属性赋值即可 ViewBag.m ...

  2. Asp.net MVC中ViewData与ViewBag的使用方法(改)

    在做MVC开发时经常会用到ViewData和ViewBag进行传值操作,因为很常用所以在这里总结一下,以方便后来人. Album.cs: [csharp] view plain copy using  ...

  3. ASP.NET MVC中controller和view相互传值的方式

    ASP.NET MVC中Controller向view传值的方式: ViewBag.ViewData.TempData 单个值的传递 Json 匿名类型 ExpandoObject Cookie Vi ...

  4. Asp.Net MVC中DropDownListFor的用法(转)

    2016.03.04 扩展:如果 view中传入的是List<T>类型 怎么使用 DropList 既然是List<T> 那么我转化成 T  List<T>的第一个 ...

  5. Asp.Net MVC中DropDownListFor的用法

    在Asp.Net MVC中可以用DropDownListFor的方式来让用户选择已定列表中的一个数值.用法不复杂,这里简单做一个记录. 首先我们要定义一个 Model ,用户在 DropDownLis ...

  6. 关于 ASP.NET MVC 中的视图生成

    在 ASP.NET MVC 中,我们将前端的呈现划分为三个独立的部分来实现,Controller 用来控制用户的操作,View 用来控制呈现的内容,Model 用来表示处理的数据. 从控制器到视图 通 ...

  7. 在ASP.NET MVC中实现Select多选

    我们知道,在ASP.NET MVC中实现多选Select的话,使用Html.ListBoxFor或Html.ListBox方法就可以.在实际应用中,到底该如何设计View Model, 控制器如何接收 ...

  8. [转载]Asp.net MVC中Controller返回值类型

    Asp.net MVC中Controller返回值类型 在mvc中所有的controller类都必须使用"Controller"后缀来命名 并且对Action也有一定的要求: 必须 ...

  9. ASP.NET MVC教程五:ASP.NET MVC中的路由

    一.概述 在ASP.NET MVC架构中,控制器在3大核心构件中处于中心地位,通过控制器支配模型和视图,然而从浏览器发出的请求到控制器还需要路由的协助,路由将特定的请求和控制器的动作对应起来. 在AS ...

最新文章

  1. [文摘20090224]天干和地支
  2. 云原生已来,只是分布不均
  3. c++面向对象高级编程 学习三 堆、栈和内存泄漏
  4. python基础之拆包、匿名函数、文件的初级应用
  5. 内核态文件操作【转】
  6. 《机器学习与数据科学(基于R的统计学习方法)》——2.15 小结
  7. android 如何解锁屏幕,2解锁屏幕破裂Android手机的方法(自由方式)
  8. 仿站和模板建站的区别_不懂建站、资金有限?外贸soho建站先看这几条建议
  9. linux 汇编 变址寻址,【计组】偏移地址、段地址和寻址方式
  10. antd日期组件配置了中文后还是显示英文的解决过程
  11. python11_python11:函数
  12. mysql查出同义词_在数据库mysql中存储和检索同义词的最佳方法
  13. opencv部署onnx,并对jpg图片进行批量检测生成xml重要信息
  14. EDI 单据和标准是什么?
  15. html a hover css,CSS中的a:hover表示什么
  16. 在企业工作一年多的几点感悟
  17. 哈工大SCIR出品《自然语言处理》新书,无套路送5本!
  18. 将word文档中的图片批量导出到文件夹中的办法
  19. LLVM-clang
  20. NCBI上查看SNP位点在哪个基因座上(locus)

热门文章

  1. 普元部署包部署找不到构建_让我们在5分钟内构建和部署AutoML解决方案
  2. Best Free Network Performance Test tool – Iperf
  3. 安娜·塞克泽沃斯卡的“小人物”
  4. 旅途中的人物之一:卖菜老人
  5. android 开启wifi失败,[求助]获取基站/wifi信息为空或失败
  6. html引用c 变量,在jsp页面中定义全局变量,供其他页面引用
  7. k8s 命令 重启_k8s 常用命令
  8. Html页面上输出不了PHP,在页面上直接输出未经解析的HTML源码
  9. python访问网页如何查看user-agent_HTTP请求头之User-Agent
  10. 学python五大理由_学习Python的五大理由