Мы добавляем директиву OutputCache следующим образом:
<%@ OutputCache Duration="60" VaryByParam="None" VaryByCustom="SessionID" %>
В MVC добавьте этот атрибут к вашему действию
[OutputCache(Duration = 60, VaryByParam="None", VaryByCustom="SessionID")]
Затем в файле Global.asax
Public override string GetVaryByCustomString(HttpContext context, string arg)
{
if(arg.ToLower() == "sessionid")
{
HttpCookie cookie = context.Request.Cookies["ASP.NET_SessionID"];
if(cookie != null)
return cookie.Value;
}
return base.GetVaryByCustomString(context, arg);
}