Declaracion del control:
<%@ Control Language="C#" AutoEventWireup="true"
Codebehind="MyControl.ascx.cs"
Inherits="MyControl" %>
Indicacion quequeremos que el control sea cacheable
<%@ OutputCache Duration="86460"
VaryByParam="none"
VaryByCustom="AffiliateIDAndCulture"%>
El atributo interesante es VaryByCustom donde podemos indicar un
string que indica la condicion en la cual se actualiza el cache
(por ejemplo por usuario o por cultura)
Para ello en el Global.asax.cs definimos el metodo
public override string GetVaryByCustomString
(HttpContext context, string custom)
Donde implementamos que string devolver basada alguna condicion
para que se actualize el cache