.net 设置cacheduration后,是否仍可以触发该函数
如果将我的cacheduration设置为Web服务的某个值,是否可以强制触发该函数.net 设置cacheduration后,是否仍可以触发该函数,.net,vb.net,web-services,caching,.net,Vb.net,Web Services,Caching,如果将我的cacheduration设置为Web服务的某个值,是否可以强制触发该函数 谢谢 唯一可以强制执行的方法是向服务器发送无缓存头 有关信息,请查看,特别是下面引用的备注 此外,HTTP表示 用户代理浏览器或调用 应用程序应该能够 通过设置 将缓存控制设置为无缓存。ASP.NET 因此,应用程序忽略缓存 当它们找到无缓存时的结果 标题 这是我通常使用的模式。如果缓存中存在该项,则使用该项,否则创建该项并将其存储在缓存中: Dim Obj = Cache("YourKeyHere") Dim
谢谢 唯一可以强制执行的方法是向服务器发送无缓存头 有关信息,请查看,特别是下面引用的备注 此外,HTTP表示 用户代理浏览器或调用 应用程序应该能够 通过设置 将缓存控制设置为无缓存。ASP.NET 因此,应用程序忽略缓存 当它们找到无缓存时的结果 标题
这是我通常使用的模式。如果缓存中存在该项,则使用该项,否则创建该项并将其存储在缓存中:
Dim Obj = Cache("YourKeyHere")
Dim YourObj As DataSet
If Obj IsNot Nothing AndAlso TypeOf Obj Is DataSet Then
YourObj = DirectCast(Obj, DataSet)
Else
YourObj = New DataSet()
'...do your normal loading of your object here
Cache.Insert("YourKeyHere", YourObj)
End If
如果您希望在缓存过期时收到通知,您可以使用我从客户端考虑的更多。假设我返回一个值列表到下拉框中。如果用户希望获得最新的值,是否有方法重新定义函数?或者我必须写一个全新的函数。