VaryByParam Property

OutputCacheProfile.VaryByParam Property

Updated: April 2009

Gets or sets the VaryByParam property.

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

public string VaryByParam { get; set; }

Property Value

Type: System.String
The VaryByParam value.

The VaryByParam is a semicolon-delimited set of parameters used to vary the cached output. It allows varying the cached output by GET query string or form POST parameters. For instance, you can vary the user-control output to the cache by specifying the user-control name along with either a query string or a form POST parameter. For more information, see Caching Multiple Versions of User Control Output.

The VaryByParam setting must be defined in either the profile or the @ OutputCache directive of the page using the profile.


The OutputCacheProfile.VaryByParam settings are the same ones used by the VaryByParam attribute of the @ OutputCache. Varying by all parameters by setting the value of "*" is not recommended. It can result in cache overflow or a denial of service attack on the Web server.

The following code example shows how to use the VaryByParam property.

// Get the current VaryByParam.
String varyByParamValue = 

// Set the VaryByParam.
outputCacheProfile.VaryByParam = 

Windows 7, Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98

The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

.NET Framework

Supported in: 3.5, 3.0, 2.0




April 2009

Changed comma-delimited to semicolon-delimited.

Content bug fix.

Community Additions

© 2016 Microsoft