asp.net mvc - How to do donut caching with c# mvc and Varnish? -
i added varnish config sub vcl_fetch { set beresp.do_esi = true; } } in mvc application i've childaction <div>@* should not cached, change returned value in db *@ 1 @html.action("gethour", "index", new { id = 5 }) </div> <div> 2 <esi:include>@* should cached *@ @html.action("gethour", "index", new { id = 5 }) </esi:include> </div> and added request header request.headers.add("x-esi", "1"); but varnish keeps caching entire page. what miss? i've notice in browser request header x-esi doesn't exist. varnish remove tag <esi:include the code in action gethour pretty simple, retrieve decimal sql server. change this: <esi:include>@* should cached *@ @html.action("gethour", "index", new { id = 5 }) </esi:include> for this: <esi:include src=...