【发布时间】:2011-01-26 07:55:42
【问题描述】:
在我的应用程序中,我尝试实现缓存(输出),但它无法正常工作, 也就是说,每次从缓存中获取只有这是我的代码。
.
代码:
protected void btn_Click(object sender, EventArgs e)
{
DataView dtv;
dtv = (DataView)Cache["mycache"];
if(dtv ==null )
{
string sqry="select * from scrap";
da=new SqlDataAdapter (sqry,con);
ds=new DataSet();
da.Fill (ds);
dtv=new DataView (ds.Tables[0]);
Cache["mycache"]=dtv ;
Response.Write ("<script> alert ('from code')</script>");
}
else
{
Response.Write ("<script> alert ('from cache')</script>");
}
grd1 .DataSource =dtv;
grd1 .DataBind();
【问题讨论】:
-
每次它仅来自缓存。如果你得到解决方案,你可以建议代码
-
我不确定我是否理解。您的意思是页面每次都来自输出缓存还是每次都从 Cache["mycache"] 获取 dtv DataView。
-
它来自 dataview dtv ,每次 dtv 不为空
-
那是因为你没有设置任何过期时间..见下文