-2

如何在 javascript 中提取 tempdata 或 viewdata 的值?即使设置了一个值,这也会返回“”。语法不正确吗?我试过没有''以及转换为字符串。似乎没有任何工作...

var message = '@TempData["Message"]';
4

1 回答 1

0

即使设置了一个值,这也会返回“”。

你确定你有一些价值TempData吗?我认为你在设置它的值时犯了一些错误。

检查这一点,然后确保你做得正确。

  • TempData意味着是一个非常短暂的实例,您应该只在当前和后续请求期间使用它。
  • 由于TempData以这种方式工作,您需要确定下一个请求将是什么,并且重定向到另一个视图是您唯一可以保证这一点的时间。
  • 因此,唯一可靠工作的场景TempData是在重定向时。这是因为重定向会杀死当前请求,然后在服务器上创建一个新请求以提供重定向视图。
  • 简单地说,Asp.Net MVC TempData dictionary就是用来在控制器动作之间共享数据。
  • 的值TempData一直持续到它被读取或当前用户的会话超时。
  • 默认情况下,TempData将其内容保存到会话状态。
  • TempData当您阅读它们时,值会被标记为删除。在请求结束时,所有标记的值都将被删除。
  • 好处是,如果您有多个重定向链,它不会导致TempData被清空,这些值仍然存在,直到您实际使用它们,然后它们会自动清除。
于 2013-06-21T12:27:33.323 回答