如何在刷新 MVC 视图时保留字符串变量


  • 场景是

我有一个 sql select 语句,该语句在 TempData 中从视图发送到另一个视图,在下一个视图中,我从TempData中检索 sql select 语句并将其保存到ViewBag中.. 然后像往常一样使用它

  • 问题是

当我刷新页面时,一切都消失了......TempData消失了,当然ViewBag是空的

有没有解决方案可以保留这个sql select语句,只要在浏览器中打开视图..然后在浏览出视图后自动销毁

提前致谢

如果您想要一个持续更长时间的类似选项,我建议您使用Session.以下是TempDataSession之间的一些差异,我认为您可能会发现这些差异很有用。

会期

  1. 会话还用于在 ASP.NET MVC 应用程序中传递数据,与 TempData 不同,它在过期时间(默认情况下会话过期时间为 20 分钟,但可以增加)中持续存在。
  2. 会话对所有请求有效,而不是对单个重定向有效。
  3. 还需要类型转换来获取数据并检查 null 值以避免错误。

温度数据

  1. TempData 用于将数据从当前请求传递到后续请求(意味着从一个页面重定向到另一个页面)。
  2. 它的寿命非常短暂,只有在目标视图完全加载之前才会躺下。
  3. 需要类型转换才能获取数据并检查 null 值以避免错误。

从本网站复制

最新更新