2010-01-13 86 views
1

我们该怎么做ASP.Net中的数据库驱动缓存。ASP.Net缓存

+2

'数据库驱动缓存'是什么意思?你想缓存通常从数据库中获取的项目? – 2010-01-13 04:33:59

+0

可能的重复项:http://stackoverflow.com/q/7312551/2291 – 2011-10-20 02:25:55

+0

可能的重复项:http://stackoverflow.com/q/1286456/2291 – 2011-10-20 02:35:29

回答

2

哦,这真的很容易。您需要在ASP.NET中使用de Cache对象。它与Session对象不同,因为存储在Cache对象中的信息是全局的而不是每个会话。您可以激活每个页面或每个Web控件的缓存。我更喜欢每个Web控件,因为您可以更好地控制缓存的数据。

如果您需要数据库驱动缓存,只需将您的业务对象存储在缓存对象中,并在您的页面中包含逻辑以防过期。

例如

protected void Page_Load(object sender, Eventargs e){ 
    BusinessObject bo = Cache["SomeBO"] as BusinessObject; 
    if (bo == null){ 
    //reload bo from database since data expired... 
    } 

} 

检查此链接:http://msdn.microsoft.com/en-us/kb/kb00323290.aspx

0

可以使用SqlDependencySqlCacheDependency对象。