代码如下
controller中的方法:
[OutputCache(Duration = 9999,VaryByCustom="aaaa", VaryByParam = "none")]
public ActionResult method()
{
return view();
}
Global中:
public override string GetVaryByCustomString(HttpContext context, string custom)
{
if (custom=="aaaa")
{
return context.Session["aaaa"].ToString();
}
return base.GetVaryByCustomString(context, custom);
}
问题是 context.Session是空的 this.Session 上下文不可用
哎 我折腾一下午了 都不知道怎么弄了 想了很多其他的方法
总之只要达到一个效果 根据我session中的某个值作为缓存的条件
必须是在action哪里进行缓存