8.ViewData,ViewBag,TempData
https://www.cnblogs.com/silentCM/p/10619848.html
ViewData
ViewData 对象大家应该比较了解了,它是一种字典集合数据,可存放任意类型,所以,使用时需要强制类转换。
ViewData 是“视图基类”和“控制器基类”的属性,所以,在控制器和视图中可以直接使用。我们通常是在控制器中写入数据,在视图中读取数据。
ViewBag
ViewBag 对象是 dynamic 类型的对象,同样也是“视图基类”和“控制器基类”的属性。使用更灵活方便。
特点:ViewBag 其实是对 ViewData 数据的包装,使用 ViewData 保存的数据可使用 ViewBag 读取,反之亦然。实际开发中最好选择其中的一种使用,建议使用 ViewBag。具体使用如下:
跨请求数据传递 TempData
TempData 是一种字典对象,也能用于从“控制器到视图”的数据传递,和 ViewData 类似。
TempData 还能实现“不同请求之间”的数据传递。使用如下:
注意的问题:TempData 数据保存机制是 Session,但又不完全同 Session。
情况 1:TempData 保存数据后,如果被使用,就会被清除,因此后面的请求将不能再次使用。
情况 2: TempData 保存数据后,如果没有被使用,则它保存的时间是 Session 的生存期。
控制器和视图数据传递总结
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
2021-01-13 Razor语法和Razor引擎大全
2021-01-13 MVC5 + EF6 + Bootstrap3 HtmlHelper用法大全(下)
2021-01-13 MVC5 + EF6 + Bootstrap3 HtmlHelper用法大全(上)
2021-01-13 在Razor中输出Html的两种方式
2021-01-13 MVC HtmlHelper用法大全
2021-01-13 Razor和HtmlHelper的使用意义
2021-01-13 Bootstrap的栅格系统