比如这样缓存 dataset 中的数据,Cache.Insert("allnewsdata", ds, new CacheDependency(Server.MapPath("../XML/XMLData.xml"))); 做为数据源,缓存datareader 的数据也可以吗?

解决方案 »

  1.   

    Cache可以缓存任何对象,当然包括ds,dr, 但不要缓存数据源,连接对象之类的,如DataReader,DataAdapter,connection等都不要缓存
      

  2.   

    sqldatareader dr = .........
    Cache.Insert("allnewsdata", dr, new CacheDependency(Server.MapPath("../XML/XMLData.xml"))); repeater1.datasroure = dr;
    repeater.databind();也就是说,这样用也是可以的??
      

  3.   

    不行,因为你缓存datareader就相当于不释放connection,那还得了