2011-10-01 85 views
4

如何在我的c#.net webapplication中的后台线程中访问我的项目会话?我可以在后台线程中访问会话吗?

它给我会话值= null。

有什么想法?

+0

请说明你想要做什么。通常情况下,像这样的操作需要同步 - 这会让你陷入真正困难的编程之中。您可以访问当前会话并存储在全局变量(静态类)中。 – mozillanerd

+0

我有长时间运行的任务做为背景,确保我不想使用windows服务,因为ajax.ajaxMethod(...)没有用,因为通过ajax我们无法访问页面上的控件,我必须使用线程,但线程正在为项目会话变量提供probs。 –

回答

3

你必须非常小心使用后台线程与ASP.NET。线程执行时,“当前”请求可能会结束。这意味着您无法访问页面,请求或任何有趣的内容。

0

你不能访问会话,但你可以分享你的数据以同样的方式,使用:HttpRuntime.Cache

有几件事情要记住,虽然:不像会议,高速缓存会过期。此外,缓存在所有网络用户之间共享。

相关问题