0
我有一个服务器控件,它有很多控件。这些控件的数据源每天刷新一次。我想将整个控件缓存24小时,并且只要控件的数据源被刷新,我也想刷新服务器控件。我知道在OutputCache标记下有一个缓存持续时间属性,但这不会对我有用。有没有一种方法可以让我在每天早上6点缓存服务器控制。使用内存中缓存也不是我的选择。在指定时间缓存ASP.NET服务器控件
感谢 维杰
我有一个服务器控件,它有很多控件。这些控件的数据源每天刷新一次。我想将整个控件缓存24小时,并且只要控件的数据源被刷新,我也想刷新服务器控件。我知道在OutputCache标记下有一个缓存持续时间属性,但这不会对我有用。有没有一种方法可以让我在每天早上6点缓存服务器控制。使用内存中缓存也不是我的选择。在指定时间缓存ASP.NET服务器控件
感谢 维杰
要缓存整个控制/页,你应该选择输出缓存。要使用它,添加此指令,并设置缓存持续时间以分钟为单位的时间财产:
<%@ OutputCache Duration="60" VaryByParamarybyparam="None" %>
例子:
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="testWebApplication.WebForm1" %>
<%@ OutputCache Duration="60" VaryByParamarybyparam="None" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title>Caching</title>
</head>
<body>
<form id="form1" runat="server">
<%= DateTime.Now.ToString() %>
</form>
</body>
</html>
但是,您可以使用Application caching只缓存从数据源中的数据。
您可以使用数据库来存储缓存的服务器控件,并在每24小时后更新它们。 – 2015-02-09 06:11:40
是否有任何其他方式这样做,而不是缓存数据库中的服务器控件 – Vijay 2015-02-09 11:05:30
如果您不想使用内存缓存,那么它是唯一可用的选项(不确定)。 – 2015-02-09 11:26:26