现在的位置: 首页 > 综合 > 正文

如何为用户控件增加自定义参数缓存

2011年07月17日 ⁄ 综合 ⁄ 共 461字 ⁄ 字号 评论关闭

路人甲:我有好几个ascx,它们所生成的页面要依赖于某一个session变量,即session不同,生成的页面也不同,这个session变量共有6种值,请问如何为这种ascx加上缓存呢?

Truly:请看代码

.ascx上增加自定义缓存参数
<%@ OutputCache Duration="30" VaryByParam="None" VaryByCustom="custom" %>

Global.asax.cs
增加如下方法
public override string GetVaryByCustomString(HttpContext context, string arg)
{
      if (arg.ToLower () == "custom")
      {
            if(Session["test"] != null)
                  return Session["test"].ToString();
      }
      return base.GetVaryByCustomString (context, arg);
}

 

抱歉!评论已关闭.