This documentation is archived and is not being maintained.

WebHeaderCollection::Add Method (String)

Inserts the specified header into the collection.

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

void Add(
	String^ header


Type: System::String
The header to add, with the name and value separated by a colon.


header is nullptr or Empty.


header does not contain a colon (:) character.

The length of value is greater than 65535.


The name part of header is Empty or contains invalid characters.


header is a restricted header that should be set with a property.


The value part of header contains invalid characters.


The length the string after the colon (:) is greater than 65535.

The header parameter must be specified in the format "name:value". If the specified header does not exist in the collection, a new header is added to the collection.

If the header specified in header is already present in the collection, the value part of the header is concatenated with the existing value.

The following example adds a name/value pair to a WebHeaderCollection using the Add Method.

   //Create a web request for S"".
   HttpWebRequest^ myHttpWebRequest = dynamic_cast<HttpWebRequest^>(WebRequest::Create( "" ));

   //Get the headers associated with the request.
   WebHeaderCollection^ myWebHeaderCollection = myHttpWebRequest->Headers;
   Console::WriteLine( "Configuring Webrequest to accept Danish and English language using 'Add' method" );

   //Add the Accept-Language header (for Danish) in the request.
   myWebHeaderCollection->Add( "Accept-Language:da" );

   //Include English in the Accept-Langauge header.
   myWebHeaderCollection->Add( "Accept-Language:en;q=0.8" );

   //Get the associated response for the above request.
   HttpWebResponse^ myHttpWebResponse = dynamic_cast<HttpWebResponse^>(myHttpWebRequest->GetResponse());

   //Print the headers for the request.
   printHeaders( myWebHeaderCollection );
//Catch exception if trying to add a restricted header.
catch ( ArgumentException^ e ) 
   Console::WriteLine( e->Message );
catch ( WebException^ e ) 
   Console::WriteLine( "\nWebException is thrown. \nMessage is : {0}", e->Message );
   if ( e->Status == WebExceptionStatus::ProtocolError )
      Console::WriteLine( "Status Code : {0}", (dynamic_cast<HttpWebResponse^>(e->Response))->StatusCode );
      Console::WriteLine( "Status Description : {0}", (dynamic_cast<HttpWebResponse^>(e->Response))->StatusDescription );
      Console::WriteLine( "Server : {0}", (dynamic_cast<HttpWebResponse^>(e->Response))->Server );
catch ( Exception^ e ) 
   Console::WriteLine( "Exception is thrown. Message is : {0}", e->Message );

.NET Framework

Supported in: 4, 3.5, 3.0, 2.0, 1.1, 1.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

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