ASP.NET Web pages include support for caching page output. A page can be cached by means of an @ OutputCache directive.
In mobile Web pages, the cached output must be set to vary according to the target device. For example, if a device running Microsoft Internet Explorer for the Pocket PC requests a page, the resulting output should be cached and returned only for other devices running Internet Explorer for the Pocket PC.
By default, the HTTP user agent string controls the variation of cached mobile Web pages. However, the output of other devices can be affected by additional properties. For example, a device with a single user agent string might have multiple screen-size settings, each of which can have different output. To allow for these variations, the page adapter can override the CacheVaryByHeaders property.
ASP.NET Web user controls also support an @ OutputCache directive that allows their output to be individually cached. This is called partial caching. However, user controls in mobile Web pages do not support this directive. Mobile Web pages do not support partial caching, because the output of a user control can be different depending on the contents of the rest of the page.