Jquery存储Tempdata

时间:2015-07-09 16:23:37

标签: jquery asp.net-mvc-3 asp.net-mvc-4 asp.net-ajax

我需要将我的jquery func存储在tempdata中,当用户移动到另一个控制器时我可以使用它。 像

这样的东西
@SuppressWarnings("unchecked")

1 个答案:

答案 0 :(得分:0)

首先,您不能在此处使用TempData,因为它只会持久存储到下一个请求,并且在异步设置时,您无法控制下一个请求的时间。如果在用户继续操作之前碰巧运行了其他一些AJAX,那么您已经烧毁了“下一个请求”。您应该使用Session或以其他方式保留(可能是本地存储或实际数据库)。

其次,一旦您是客户端(运行JavaScript的地方),就无法运行服务器端代码,因此,您唯一的选择是使用AJAX向控制器操作发送请求,然后响应通过在会话中设置一些信息。另外,请注意,当您执行此操作时,必须使用MVC控制器操作,而不是Web Api操作。 Web Api是无状态的,即使Web Api控制器与MVC站点位于同一项目中,也无法访问会话。