Was this page helpful?
Your feedback about this content is important. Let us know what you think.
Additional feedback?
1500 characters remaining
HttpCacheVaryByParams Class
Collapse the table of content
Expand the table of content

HttpCacheVaryByParams Class

Provides a type-safe way to set the VaryByParams property.

System.Object
  System.Web.HttpCacheVaryByParams

Namespace:  System.Web
Assembly:  System.Web (in System.Web.dll)

public sealed class HttpCacheVaryByParams

The HttpCacheVaryByParams type exposes the following members.

  NameDescription
Public methodHttpCacheVaryByParamsInitializes a new instance of the HttpCacheVaryByParams class.
Top

  NameDescription
Public propertyIgnoreParamsGets or sets a value indicating whether an HTTP response varies by Get or Post parameters.
Public propertyItemGets or sets a value indicating whether the cache varies according to the specified HTTP request parameter.
Top

  NameDescription
Public methodEquals(Object)Determines whether the specified object is equal to the current object. (Inherited from Object.)
Public methodGetHashCodeServes as the default hash function. (Inherited from Object.)
Public methodGetTypeGets the Type of the current instance. (Inherited from Object.)
Public methodToStringReturns a string that represents the current object. (Inherited from Object.)
Top

The VaryByParams property identifies which HTTP Get or Post parameters ASP.NET uses to uniquely identify a variation of the response when there are multiple cached responses for a resource. This is useful when a response depends on a set of client inputs, such as headers or parameters.

The HttpCacheVaryByParams is not directly related to HTTP cache-control headers, but helps ensure that a client or proxy varies by the specified parameters. For more information about VaryByParams, see RFC 2616: Hypertext Transfer Protocol -- HTTP/1.1, available on the World Wide Web Consortium (W3C) Web site. See section 14, "Header Field Definitions", for complete details.

The following code example demonstrates how the HttpCacheVaryByParams object is accessed from the HttpCachePolicy object associated with an HttpResponse.

Response.Cache.SetExpires(DateTime.Now.AddSeconds(60));
Response.Cache.SetCacheability(HttpCacheability.Public);
Response.Cache.SetValidUntilExpires(false);
Response.Cache.VaryByParams["Category"] = true;

if (Response.Cache.VaryByParams["Category"])
{
   //...
}

.NET Framework

Supported in: 4.6, 4.5, 4, 3.5, 3.0, 2.0, 1.1

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
Show:
© 2015 Microsoft