我该如何设计这个静态变量?

anantnt203120 2006-11-17 05:44:16
我想定义一个静态字符串,B/S系统,在整个程序运行时保持静态。
我应该在什么地方定义?
新建一个公共类,类里有一个静态字符串变量。这样可以吗?

由于是B/S程序,在程序并发时,一个用户付值的静态变量,另一个用户同时也到这个页面,是否会修改这个静态变量的值?

怎么设计能达到并发操作不影响,各自使用各自的静态变量。
...全文
288 26 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
26 条回复
切换为时间正序
请发表友善的回复…
发表回复
anantnt203120 2006-11-20
  • 打赏
  • 举报
回复
看来只能用session了。那问一下,在session中保存一个自定义类,会不会影响效率?
股神 2006-11-18
  • 打赏
  • 举报
回复
up
cainiaoxuefei 2006-11-18
  • 打赏
  • 举报
回复
public class Classname
{
public static string str=null;
}
此变量是全局的
daishengs 2006-11-18
  • 打赏
  • 举报
回复
简单点讲,针对所有用户存在Application中,单个用户存在session中
szc21 2006-11-18
  • 打赏
  • 举报
回复
Hashtable是全局的吧.
看了半天,感觉楼主的目的是想实现session的功能,但由于数据量大,session不好保存.其实不一定要保存xml数据的吧,就直接保存xml地址,对应每个人生成一个静态的xml文件.
如果是我理解错的话,就用hashtable,可以保存到cache里面
wlb854 2006-11-18
  • 打赏
  • 举报
回复
感觉你是要达到Session的作用,为什么不直接用呢
jedliu 2006-11-17
  • 打赏
  • 举报
回复
楼上说的好,将你那个全局变量设为Hashtable。
private static Hashtable sessionTable = new Hashtable();
然后过来一个变量就把用户ID做为key保存进去,将字符串保存为value。
sxlfybb 2006-11-17
  • 打赏
  • 举报
回复
建立一个hashtable
键名是用户id,值为要保存的数据,之后将hashtable保存在session中,
weicanhuang 2006-11-17
  • 打赏
  • 举报
回复
用session保存.
anantnt203120 2006-11-17
  • 打赏
  • 举报
回复
都下班了。走的还真齐。谢谢各位,祝大家周末愉快,周一来帮我解决问题啊。
那位好心人帮我顶一下,我顶不动了。
anantnt203120 2006-11-17
  • 打赏
  • 举报
回复
保存为文件的话,但用户不访问时要删除xml文件,这样频繁的保存xml,删除xml也影响效率/
anantnt203120 2006-11-17
  • 打赏
  • 举报
回复
出了Session还有好的建议吗?

说白了,就是实现: 针对某一用户的全局变量
waikey 2006-11-17
  • 打赏
  • 举报
回复
我认为除了用Session没有其它好的办法
anantnt203120 2006-11-17
  • 打赏
  • 举报
回复
就是说把字符串保存在Session里,对吗?

这到是个办法,问题是我这个字符串是个xml文件,保存在Session太大,效率肯定慢。

cpp2017 2006-11-17
  • 打赏
  • 举报
回复
弄了半天就是个Session的问题。

将某个变量保存在Session中,只有这用户可以访问。

如Sesion["aa"] = 1;

取值的时候

就用(int)Session["aa"]
yufenfeila 2006-11-17
  • 打赏
  • 举报
回复
比较简单但有效的办法是,全局变量存储在Application中,而针对某一用户的全局变量存储在Session中
hegang888888888 2006-11-17
  • 打赏
  • 举报
回复
Application中就可以
haodouzhe123x 2006-11-17
  • 打赏
  • 举报
回复
谁登陆就记住谁的id,然后用Session("id")=静态字符串变量
anantnt203120 2006-11-17
  • 打赏
  • 举报
回复
然后用把这个你获取某个用户,用Session("用户id")=静态字符串变量;


没明白这句话啊,大哥。说清楚点啊。
haodouzhe123x 2006-11-17
  • 打赏
  • 举报
回复
你的想法是可以的,你想用户打开自己的页面是使用自己的静态变量,这很简单:就向你说的一样先用:一个公共类,类里有一个静态字符串变量.然后用把这个你获取某个用户,用Session("用户id")=静态字符串变量;
这样子你不就可以实现你想要的操作了吗?
加载更多回复(6)

62,242

社区成员

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

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

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

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