ASP.NET MVC中ViewData、ViewBag和TempData
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相关推荐
- 几句话说明 .NET MVC中ViewData, ViewBag和TempData的区别
ViewData和TempData是字典类型,赋值方式用字典方式, ViewData["myName"] ViewBag是动态类型,使用时直接添加属性赋值即可 ViewBag.m ...
- Asp.net MVC中ViewData与ViewBag的使用方法(改)
在做MVC开发时经常会用到ViewData和ViewBag进行传值操作,因为很常用所以在这里总结一下,以方便后来人. Album.cs: [csharp] view plain copy using ...
- ASP.NET MVC中controller和view相互传值的方式
ASP.NET MVC中Controller向view传值的方式: ViewBag.ViewData.TempData 单个值的传递 Json 匿名类型 ExpandoObject Cookie Vi ...
- Asp.Net MVC中DropDownListFor的用法(转)
2016.03.04 扩展:如果 view中传入的是List<T>类型 怎么使用 DropList 既然是List<T> 那么我转化成 T List<T>的第一个 ...
- Asp.Net MVC中DropDownListFor的用法
在Asp.Net MVC中可以用DropDownListFor的方式来让用户选择已定列表中的一个数值.用法不复杂,这里简单做一个记录. 首先我们要定义一个 Model ,用户在 DropDownLis ...
- 关于 ASP.NET MVC 中的视图生成
在 ASP.NET MVC 中,我们将前端的呈现划分为三个独立的部分来实现,Controller 用来控制用户的操作,View 用来控制呈现的内容,Model 用来表示处理的数据. 从控制器到视图 通 ...
- 在ASP.NET MVC中实现Select多选
我们知道,在ASP.NET MVC中实现多选Select的话,使用Html.ListBoxFor或Html.ListBox方法就可以.在实际应用中,到底该如何设计View Model, 控制器如何接收 ...
- [转载]Asp.net MVC中Controller返回值类型
Asp.net MVC中Controller返回值类型 在mvc中所有的controller类都必须使用"Controller"后缀来命名 并且对Action也有一定的要求: 必须 ...
- ASP.NET MVC教程五:ASP.NET MVC中的路由
一.概述 在ASP.NET MVC架构中,控制器在3大核心构件中处于中心地位,通过控制器支配模型和视图,然而从浏览器发出的请求到控制器还需要路由的协助,路由将特定的请求和控制器的动作对应起来. 在AS ...
最新文章
- [文摘20090224]天干和地支
- 云原生已来,只是分布不均
- c++面向对象高级编程 学习三 堆、栈和内存泄漏
- python基础之拆包、匿名函数、文件的初级应用
- 内核态文件操作【转】
- 《机器学习与数据科学(基于R的统计学习方法)》——2.15 小结
- android 如何解锁屏幕,2解锁屏幕破裂Android手机的方法(自由方式)
- 仿站和模板建站的区别_不懂建站、资金有限?外贸soho建站先看这几条建议
- linux 汇编 变址寻址,【计组】偏移地址、段地址和寻址方式
- antd日期组件配置了中文后还是显示英文的解决过程
- python11_python11:函数
- mysql查出同义词_在数据库mysql中存储和检索同义词的最佳方法
- opencv部署onnx,并对jpg图片进行批量检测生成xml重要信息
- EDI 单据和标准是什么?
- html a hover css,CSS中的a:hover表示什么
- 在企业工作一年多的几点感悟
- 哈工大SCIR出品《自然语言处理》新书,无套路送5本!
- 将word文档中的图片批量导出到文件夹中的办法
- LLVM-clang
- NCBI上查看SNP位点在哪个基因座上(locus)
热门文章
- 普元部署包部署找不到构建_让我们在5分钟内构建和部署AutoML解决方案
- Best Free Network Performance Test tool – Iperf
- 安娜·塞克泽沃斯卡的“小人物”
- 旅途中的人物之一:卖菜老人
- android 开启wifi失败,[求助]获取基站/wifi信息为空或失败
- html引用c 变量,在jsp页面中定义全局变量,供其他页面引用
- k8s 命令 重启_k8s 常用命令
- Html页面上输出不了PHP,在页面上直接输出未经解析的HTML源码
- python访问网页如何查看user-agent_HTTP请求头之User-Agent
- 学python五大理由_学习Python的五大理由