如何在 asp.net(vb.net 框架 2)类中使用缓存

本文关键字:net 缓存 框架 asp vb | 更新日期: 2023-09-27 18:31:26

我有一个方法,在一个类中,用于从mssql数据库中检索一些数据。我在许多页面和 Web 处理程序中使用它,具体取决于用户的许可。我并不总是想从数据库中获取数据,需要利用缓存的优势。我正在使用 vb.net 框架 2 作为我的客户端,不想更改它。我尝试了很多方法,但没有奏效。谁能帮我...

我最后一次尝试是这样的:

Dim myDataSet As New DataSet
myDataSet = CType(Web.HttpContext.Current.Cache.Get("myData"), DataSet)
If myDataSet Is Nothing Then
    myDataSet = GetData("select * from Table")
    Web.HttpContext.Current.Cache.Insert("myData", myDataSet, Nothing, DateTime.Now.AddSeconds(60), TimeSpan.Zero)
    'End If
End If

这是来自类(testClass.vb)的方法之一,任何建议请...

如何在 asp.net(vb.net 框架 2)类中使用缓存

在尝试将其分配给 DataSet 之前,您应该检查 Cache 值是否为 Nothing,如下所示

Dim myDataSet As DataSet
If HttpContext.Current.Cache.Get("myData") Is Nothing
    myDataSet = GetData("select * from Table")
    HttpContext.Current.Cache.Insert("myData", myDataSet, Nothing, DateTime.Now.AddSeconds(60), TimeSpan.Zero)
Else
    myDataSet = HttpContext.Current.Cache.Get("myData") 
End If