ASP.NET MVC Response Filter + OutputCache Attribute

No estoy seguro de si esto es algo específico de ASP.NET MVC o ASP.NET en general, pero esto es lo que está sucediendo. Tengo un filtro de acción que elimina los espacios en blanco mediante el uso de un filtro de respuesta:

public class StripWhitespaceAttribute : ActionFilterAttribute
{
    public StripWhitespaceAttribute ()
    {

    }

    public override void OnResultExecuted(ResultExecutedContext filterContext)
    {
        base.OnResultExecuted(filterContext);

        filterContext.HttpContext.Response.Filter = new WhitespaceFilter(filterContext.HttpContext.Response.Filter);
    }
}

Cuando se usa junto con el atributo OutputCache, mis llamadas a Response.WriteSubstitution para el "almacenamiento en caché de agujero de dona" no funcionan. La primera y la segunda vez que la página carga la devolución de llamada pasada a WriteSubstitution, se llama, después de lo cual no se vuelve a llamar hasta que la memoria caché de salida caduca. He notado esto no solo con este filtro en particular, sino con cualquier filtro usado en Response.Filter ... ¿me estoy perdiendo algo?

También olvidé mencionar que he intentado esto sin el uso de un atributo de filtro de acción MVC adjuntando al evento PostReleaseRequestState en global.asax y estableciendo el valor de Response.Filter allí ... pero aún no hay suerte.

Respuestas a la pregunta(2)

Su respuesta a la pregunta