需要数据缓存技术方面的帮助

时间:2010-03-04 10:30:11

标签: asp.net caching

我正在实现数据缓存在asp.net中的工作方式。为此,我保留了三个按钮

1)缓存日期按钮,

2)currentdate按钮和

3)缓存删除按钮。

如果我点击缓存日期按钮日期将被缓存2个小时。如果点击当前日期按钮,将显示当前日期时间,最后如果我点击删除缓存按钮缓存将被删除,并将显示新的缓存日期和新的当前日期。

为此,我已经完成了编码,但是datetime不缓存总是它刷新我的意思是如果datetime缓存2分钟,如果我点击缓存按钮datetime不应该改变,但在我的情况下它总是在改变.... Pls有人修改我的代码......

  protected void BtnCacheTime_Click(object sender, EventArgs e)
  {      
            Cache.Insert("date",DateTime.Now,null, 
                         DateTime.Now.AddMinutes(2),    TimeSpan.Zero);
            lblCacheDateTime.Text = Cache["date"].ToString();
  }  

  protected void BtnCurrentDate_Click(object sender, EventArgs e)
  {
     lblCurrentDate.Text = DateTime.Now.ToString();
  }  
 protected void BtnRemoveCache_Click(object sender, EventArgs e)
 {
        Cache.Remove("date");
        lblFreshCacheDate.Text = DateTime.Now.ToString();
        lblFreshCrntDate.Text = DateTime.Now.ToString();        
 }

1 个答案:

答案 0 :(得分:1)

好吧,有一次,您将DateTime.Now插入缓存,然后立即读取其值。您还期待什么?

接下来,您不应该使用TimeSpan.Zero - 设置绝对过期时,您应该使用Cache.NoSlidingExpiration