1

我有一个ASP.NET Web 窗体应用程序。

我必须使用我的存储库层提供的控件通过GridView控件显示搜索结果。DataSourceList<T>

由于每次用户更改搜索过滤器时我都会使用自动回发技术,为了减少对数据库的访问量,我想将初始List<T>结果集存储在缓存中,以便在那里执行进一步的过滤。

我发现了很多关于 ASP.NET 中缓存的文章,但它们都包含比我更复杂的范围。有谁知道快速而清晰的方法吗?

4

2 回答 2

1

我猜每个用户都会有自己独特的结果集,所以你可以简单地存储List<>在会话中。

Session[SessionKeys.MyResultsetKey] = myList;
于 2012-06-12T12:19:25.380 回答
0

要将其存储在缓存中,您可以简单地这样做

Cache["CacheKeyName"] = myList;

要检查回发时该密钥是否已存在,您可以这样做

if(!IsPostBack)
{
 if(Cache["CacheKeyName"] == null)
 {
  Cache["CacheKeyName"] = myList;
 }
}
于 2012-06-12T12:37:53.983 回答