在网站中缓存数据集

如果要构建网站,可通过把填充的数据集实例放到 ASP.NET Cache 对象中,来提高可伸缩性和性能。这样做可防止为填充数据集而对数据库进行多余的(可能也是很慢的)调用。有关更多信息,请参见“如果使用数据集,请对它们进行缓存”

Note注意

如果数据集包含用于所有用户的标准值,请使用 Cache 对象。但是,如果数据集包含用于每个用户的唯一值(基于 SQL 查询的 WHERE 子句中的用户特定条件,如用户 ID),则应该使用 Session 对象。

  1. 打开 Web 窗体。

  2. 从“视图”菜单中,单击“代码”。

  3. 找到将数据集实例的赋给 DataSetConfiguration.CustomerDataSet property的代码行(如下所示)。

    myDataSet = DataSetConfiguration.CustomerDataSet
    
    dataSet = DataSetConfiguration.CustomerDataSet;
    
  4. 将这一行代码替换为完整的条件代码块,检查名为“customerDataSet”的缓存值。

请完全按此处所示输入条件块和代码。

``` vb
If Cache("customerDataSet") Is Nothing Then
myDataSet = DataSetConfiguration.CustomerDataSet
Cache("customerDataSet") = myDataSet
Else
myDataSet = CType(Cache("customerDataSet"), DataSet)
End If
```

``` csharp
if (Cache["customerDataSet"] == null)
{
dataSet = DataSetConfiguration.CustomerDataSet;
Cache["customerDataSet"] = dataSet;
}
else
{
dataSet = (DataSet)Cache["customerDataSet"];
}
```
  1. 要测试数据集缓存,请从“调试”菜单中选择“开始”。

    即会显示“客户”报表,并且显示在数据集中放入的填充数据。

  2. 单击浏览器的“刷新”按钮。

“客户”报表会快速地再次显示,因为现在是从 ASP.NET Cache 对象检索数据集。
  1. 返回到 Visual Studio,然后单击“停止”从调试模式中退出。