如何在页面级别上启用会话而不是在所有网站上?

时间:2009-10-14 15:18:24

标签: asp.net community-server

我正在开发一个扩展社区服务器的网站,我发现社区服务器在web.config <sessionState mode="Off" />中禁用了会话。
现在我有一个我创建的网页,必须在其中使用会话,但我不想编辑web.config sessionState值,
我可以只在页面级别启用会话状态吗?还是有另外一个想法呢?

1 个答案:

答案 0 :(得分:1)

我不知道你可以为一个页面启用会话状态 - 可能,但不太可能。

相反,您可以使用ASP.NET缓存,它类似但不会在会话之间隔离数据(您必须自己这样做)。或者,您可以在应用程序的某个位置创建一个静态数据结构来管理每个会话状态。最后,您可以将对象序列化并将它们存储在ViewState中(如果它们不是很大)。可以在单个页面(甚至控制)级别配置ViewState。

您应该尝试与您的组织选择的有关州管理的方法保持一致。可能有理由避免服务器端状态(可能是负载平衡等)。如果不理解这个决定背后的原因,你可能会引入意想不到的问题。