定义一个全局变量 string a=null;
当一个函数里改变了a的值,是不是页面postback以后a又变成null?

解决方案 »

  1.   

    对,你可以把全局变量放在Session或Cache中
      

  2.   

    如果是静态全局变量,a会变成null吗?
      

  3.   

    放在Application里面吧!在global.asax中设置
      

  4.   

    <appSettings>
        <add key="cnstr" value="user id=sa;data source=.;initial catalog=datacenter;password=sa" />
        
        </add>
      </appSettings>
    在webconfig里面写入这个(例如数据库连接stirng)调用:SqlConnection cn=new SqlConnection(System.Configuration.ConfigurationSettings.AppSettings["cnstr"]);
      

  5.   

    我也不明白ASP.NET中STATIC变量的作用范围,呵
      

  6.   

    把值附给SESSION("NAME"),变量的值就不会变了。
    如果是因为POSTBACK改变了变量的值,也可以使用:If Not IsPostBack Then
    ...........
    ...........
    End If把这段代码写在Page_Load中,把你要写的代码写在这个If语句里。
      

  7.   

    定义Static 变量 ,刷新的时候是不会变成null 的,不过Static变量在多个用户共同使用的时候,会出现一定问题。比如a用户的内容可能会在b 用户上显示,使用的时候要注意,变量的生存空间
      

  8.   

    回复人: pontus(pontus) ( ) 信誉:100  2004-12-11 20:05:00  得分: 0  
     
     
       如果是静态全局变量,a会变成null吗?
      
     
    A:不会,但是对于静态的全局变量,您要慎重使用!
      

  9.   

    如果a.aspx中的静态全局变量a=1,那么b.aspx中的同样的静态全局变量a是否也是1?
      

  10.   

    如果a.aspx中的静态全局变量a=1,那么b.aspx中的同样的静态全局变量a不是1。