微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

asp.net – 什么放在会话变量中

我最近遇到了一个ASP 1.1 Web应用程序,它在会话变量中放入了大量内容包括所有数据库数据对象甚至数据库连接对象.它最终变得巨大.当Web会话超时(用户使用完应用程序四小时后),有时会回滚其数据库事务.我假设这是因为当IIS终止会话时,数据库连接没有正确关闭.

无论如何,我的问题是会话变量应该是什么?显然有些事情需要在那里.用户在主屏幕上选择要编辑的计划,因此计划ID将进入会话变量.通过存储有关用户(及其管理员等)的所有详细信息以及他们在会话变量中编辑的计划来尝试减少数据库负载是否更好?或者我应该尝试最小化会话变量中的内容和在Page_Load事件中查询数据库中我需要的所有内容

解决方法

这很难回答,因为它是特定于应用程序的,但这里有一些我使用的指南:

>尽可能少地参加会议.
>仅在给定访问期间应该持续的用户特定选择是一个不错的选择
>通常,在整个用户访问您的站点时需要访问多个页面的变量(以避免在页面之间传递它们)也很适合放入会话中.

从您对应用程序的说法很少,我可能会从数据库中选择您的数据并尝试找到最小化这些查询的影响而不是加载会话的方法.

原文地址:https://www.jb51.cc/aspnet/246419.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐