Yes. It dynamically disables public (or client) caching and switches the page to use server caching. This is because the substitutions need to happen via server-side logic.
It can be implemented in 2 methods:
1. Call the new Response.WriteSubstitution method, passing it a reference to the desired
substitution method callback.
2. Add a control to the page at the desired location, and set its
methodName attribute to the name of the callback method.
The following statement fetches all the objects in cache and stores in a dictionary object.
IDictionaryEnumerator CacheEnum = HttpContext.Current.Cache.GetEnumerator();