请教有无可能定义全局变量,使之仅在单一页面执行过程有效,例如像以下代码例子,每次刷新页面cnt1和cnt2都会不断累增,而我要的是每次页面执行都重新初始化的全局变量,全局变量不要每刷新一次页面就累增, 并且多个用户、多个页面之间不会相互影响。我也搜索过相关的资料,shared变量是相当于在Application中定义变量, module中的变量的IL编码也是shared,而我要的不是在Application或Session中定义的全局变量, 而是在每次页面执行时的全局变量,可以在其它处理事务的类中直接使用的全局变量.代码例子module m1
public dim cnt2 as integer=0
end modulepublic class Try3
Inherits System.web.ui.page

shared cnt1 as integer=0

public sub page_load()
cnt1=cnt1+1
cnt2=cnt2+1
response.write( cnt1 & " " & cnt2 )
end sub
end class请问在asp.net中是否有可能实现,或者有其它的解决办法. 我现在的做法是在Page类定义局部变量,然后向事务处理类传送Page对象, 但这种方法明显不合理且没效率.

解决方案 »

  1.   

    一般存放累计信息都是放在session或者用application
      

  2.   


    但是我现在做的测试,以及网上搜索的结果, 似乎页面的全局变量不会重新初始化. 我要的是不在页面间实现累计的、只在本页本次执行进行累计的、可以重新初始化的全局变量, 并且这种全局变量可以给从Object继承的类直接使用.如果可以实现,请指点实现的方法和代码例子.
    我也有考虑ViewState, 但我的大部份的类都是界面无关类, 似乎也不大合适.