VaryByCustom
Vary the output cache either by browser name and version or by a custom string, which must be handled in an overridden version of GetVaryByCustomString().
VaryByHeader
A semicolon-separated list of strings representing headers submitted by a client.
VaryByParam
A semicolon-separated list of strings representing query string values in a GET request or variables in a POST request. This is a required attribute.
VaryByControl
A semicolon-separated list of strings representing properties of a user control used to vary the output cache (applicable to user controls only).