当多个用户访问同一页面时,静态变量的问题????

吐司vivi 2004-11-15 03:05:45
进行网页编程时,由于考虑到页面刷新问题,所以定义很多静态变量以及静态变量数组,但如果多用户同时访问时静态变量就出现了问题,第一个用户取到的值是第二用户的静态变量值,而且所有定义的静态变量值都不正确了。换句话说,就是网页中使用静态变量会造成用户间相互影响的问题,请教高手有没有什么好一些的解决办法。
...全文
534 27 打赏 收藏 转发到动态 举报
写回复
用AI写文章
27 条回复
切换为时间正序
请发表友善的回复…
发表回复
吐司vivi 2004-11-17
  • 打赏
  • 举报
回复
搞定,用viewstate,谢谢楼上的热心人,给分
吐司vivi 2004-11-16
  • 打赏
  • 举报
回复
谢谢楼上的热心人们,我用viewstate试试
lhcoolhacker 2004-11-16
  • 打赏
  • 举报
回复
使用ViewState解决,我以前也碰到相同的问题,后来使用ViewState解决了。
Jack2013tong 2004-11-16
  • 打赏
  • 举报
回复
UP
bytes 2004-11-16
  • 打赏
  • 举报
回复
To vivi8233(吐司)
可以
吐司vivi 2004-11-16
  • 打赏
  • 举报
回复
up
吐司vivi 2004-11-16
  • 打赏
  • 举报
回复
请问一下 viewstate 可以存放数组吗???急
tbchinese 2004-11-15
  • 打赏
  • 举报
回复
学习!
bytes 2004-11-15
  • 打赏
  • 举报
回复
单页级的自身状态的保存建议用ViewState,
用户级的重要的信息的保存建议用Session(如每个用户的状态)
用户级的非重要性的信息的保存建议用Cache
整个站级的状态的保存建议用Application.或用Singleton模式的全局对象

cache和session的用法相同,不过cache中的信息在内存紧张时会消失,所以cache的使用时需如下形式

if(Cache["key"]==null)
{
重新检索数据;
Cache["key"]=检索到的数据;
}
所需数据=Cache["key"]

全局变量的读写建议"加锁",不然会出现不正常的.
simonzone 2004-11-15
  • 打赏
  • 举报
回复
ViewState 原理是服务器Render html control。 然后把值放到text,且隐藏了。
所以如果你的text值很大,所以服务器就要发送很多数据到ie上。
cuike519 2004-11-15
  • 打赏
  • 举报
回复
ViewState里面职能保存可以序列化的对象。它是页面级的,只对当前的页面有效。
你可以把原来保存在静态变量里面的东西保存在ViewState里面。
whxleem 2004-11-15
  • 打赏
  • 举报
回复
放到session中或viewstate中吧
cuike519 2004-11-15
  • 打赏
  • 举报
回复
静态变量的意思就是一个类级的变量,所以所有的用户使用这个类都会共享里面的静态变量。所以尽量不要使用静态变量。用户相关的有Session来处理。在多用户的时候不要用静态变量保存用户个性的东西。
qixiao 2004-11-15
  • 打赏
  • 举报
回复
如果动态生成的文本框是服务器端的textbox,会自动保存ViewState的
qixiao 2004-11-15
  • 打赏
  • 举报
回复
ViewState跟session的用法一样,只不过session在服务器内存中,而ViewState在页面中
ViewState("aa")=v
v=ViewState("aa")
吐司vivi 2004-11-15
  • 打赏
  • 举报
回复
怎没人回答呀,快下班了,高手救命!!
不然回不去家了!!
吐司vivi 2004-11-15
  • 打赏
  • 举报
回复
to bytes(byt)
Cache没用过,能具体说一下吗?
bytes 2004-11-15
  • 打赏
  • 举报
回复
用Cache如何
吐司vivi 2004-11-15
  • 打赏
  • 举报
回复
我做的项目是,从数据库定义表中动态生成文本框(注:不同用户生成的文本框数目不一样,内容也不一样),选择完时间等条件后,再调用数据库记录表,将查询结果显示到动态生成的文本框中,这时我可以对这些记录进行添删改操作,保存时又再次使用到动态生成的文本框。
关键是每次使用到动态文本框时我都需要使用静态变量,有没有好办法?

能再具体说说ViewState的使用吗?
qixiao 2004-11-15
  • 打赏
  • 举报
回复
webdiyer的方法也很好
如果用viewstate却会增加页面的负担,不如平衡一下,session和viewstate都用一点
加载更多回复(7)

62,072

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧