This documentation is archived and is not being maintained.

Cookie Constructor (String, String, String, String)

Initializes a new instance of the Cookie class with a specified Name, Value, Path, and Domain.

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

	String^ name, 
	String^ value, 
	String^ path, 
	String^ domain


Type: System::String

The name of a Cookie. The following characters must not be used inside name: equal sign, semicolon, comma, newline (\n), return (\r), tab (\t), and space character. The dollar sign character ("$") cannot be the first character.

Type: System::String

The value of a Cookie object. The following characters must not be used inside value: semicolon, comma.

Type: System::String

The subset of URIs on the origin server to which this Cookie applies. The default value is "/".

Type: System::String

The optional internet domain for which this Cookie is valid. The default value is the host this Cookie has been received from.


The name parameter is nullptr.


The name parameter is of zero length.


The name parameter contains an invalid character.


The value parameter is nullptr .

-or -

The value parameter contains a string not enclosed in quotes that contains an invalid character.

The default for the domain and path parameters uses the empty string ("").

The value parameter for a Cookie must not be a nullptr reference (Nothing in Visual Basic). The following characters are reserved and cannot be passed in the value parameter unless the string passed in the value parameter is enclosed in double quotes: semicolon, comma. So the following example constructor would succeed but when you try to add this Cookie to a CookieContainer instance with the Add or Add methods the operation will fail and throw an exception:

System.Net.Cookie cookie = new System.Net.Cookie("contoso", "123,456", "");

However, the following constructor with these special characters escaped will create a Cookie that can be added to a CookieContainer instance:

System.Net.Cookie cookie = new System.Net.Cookie("contoso", "\"123,456\"", "", "");

The comma character is used as a delimiter between separate cookies on the same line.

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, 1.1, 1.0