a.aspx   b.aspx 调用同一个proc  返回dt通过vs跟踪调试发现,a文件返回的 dt 是b文件根据条件调用所需的数据,它怎么返回给a.aspx文件了呢?也就是a的数据返回给b啦,b的数据返回给a啦,刷新正常,再刷新出错,时好时坏?我单用户测试都是这样....晕S我了,咋回事哟

解决方案 »

  1.   

    对了,使用的是 ms sql2005
      

  2.   

    你的DT是不是加了static 这个修饰符?
      

  3.   


    通过方法exec.GetDataTable()返回的dt   方法带static修饰符
      

  4.   


    那就对了。static 修饰的对象是对所有页面共用的。当你打开a页面,根据a页面的条件返回dt;
    这时你打开b页面,那么根据b页面返回的dt又替换了前面根据a页面返回的dt了(在a页面中的)。
    所以你的用法是错误的。明白?
      

  5.   


    感谢。
    也就是
    public   static   最好一个人开车
    public   可以很多人一起开车那通过static的方法可多了......那都要
    public void fun(){}
    每次用的时候都要new class
      

  6.   


    我的天,就算方法是同一个,他第二次调用 dt会重新查询并填充啊!怎么可能是同一个dt
      

  7.   


    感谢,搞定,结贴,顺便总结一下:1、方法可以是静态的,但变量一定不能是静态的,不然会出问题
    2、我出的情况是,所有调的方法都用的静态方法,同时用了一个conn连接字符串全局的静态变量,只要有方法用到此静态变量的,就会出现这种情况。感谢各位,结贴