怎么在ASP.NET中保存一个全局变量

seaman_X 2002-05-08 11:13:34
难道一定要用hidden?

我在page_load前定义了一个变量private int No=0;
然后在一个事件中No++,

可是每次页面刷新都是0到1,怎么解决阿,我需要计数。

现在我是用hidden参数实现的
...全文
165 9 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
buaawjh 2002-05-08
  • 打赏
  • 举报
回复
网页是无状态的,我当初从单机版过渡到网络编程就是这方面的概念老出问题
triout 2002-05-08
  • 打赏
  • 举报
回复
你在定义这个变量的时候不要给它赋值,因为每次启动都会初始化该变量,所以得不到你预期的值了。
使用下面的方法:
Private int No;
Private void Page_Load(Object sender,SystemEventArgs e)
{
if(!isPostBack)
No=0;
}
hvq 2002-05-08
  • 打赏
  • 举报
回复
同一页面:ViewState
不同页面:session
mbm 2002-05-08
  • 打赏
  • 举报
回复
参见:
http://211.90.241.24/aspx/news/asp.net/221.shtml
icyer 2002-05-08
  • 打赏
  • 举报
回复
页面每次返回刷新的时候,都会重置声明的变量,所以每次No都会为0。
你可以用ViewState
CHINAhello 2002-05-08
  • 打赏
  • 举报
回复
Session["var"]跟Application["var"]
juqiang 2002-05-08
  • 打赏
  • 举报
回复
你在page_load中,调用就可以啊!
像楼上写的:

if(!Page.IsPostBack){
///Your Dictionary code...
}
seaman_X 2002-05-08
  • 打赏
  • 举报
回复
ViewState是怎么回事我搞清楚了,呵呵,谢谢!

不过按照编程思路,看来不能设定全局变量了。
例如我需要使用一个组件:
private Dictionary op=new Dictionary(@"c:\dic.xml");
写在page_load里面或者外面是不是每次刷新都要重新载入一次,因为我的组件是读取一个1兆多大的文件,我希望只能在某一个事件中被载入一次,然后就一直可以用,看来是做不到了?

高手请回答!
seaman_X 2002-05-08
  • 打赏
  • 举报
回复
ViewState是什么概念?搞不清楚!

triout(Daview)朋友说的还是不行阿,还是不能实现全局变量,看来只能用Session了。

62,243

社区成员

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

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

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

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