Export (0) Print
Expand All

WebHeaderCollection::Add Method (String, String)

Inserts a header with the specified name and value into the collection.

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

public:
virtual void Add(
	String^ name, 
	String^ value
) override

Parameters

name
Type: System::String

The header to add to the collection.

value
Type: System::String

The content of the header.

ExceptionCondition
ArgumentException

name is nullptr, Empty, or contains invalid characters.

-or-

name is a restricted header that must be set with a property setting.

-or-

value contains invalid characters.

ArgumentOutOfRangeException

The length of value is greater than 65535.

If the header specified in name does not exist, the Add method inserts a new header into the list of header name/value pairs.

If the header specified in name is already present, value is added to the existing comma-separated list of values associated with name.

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

try
{
   //Create a web request for S"www.msn.com".
   HttpWebRequest^ myHttpWebRequest = dynamic_cast<HttpWebRequest^>(WebRequest::Create( "http://www.msn.com" ));

   //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 );
   myHttpWebResponse->Close();
}
//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 );
}
try {
   //Create a web request for S"www.msn.com".
   HttpWebRequest* myHttpWebRequest = 
      dynamic_cast<HttpWebRequest*> (WebRequest::Create(S"http://www.msn.com"));

   //Get the headers associated with the request.
   WebHeaderCollection* myWebHeaderCollection = myHttpWebRequest->Headers;

   Console::WriteLine(S"Configuring Webrequest to accept Danish and English language using 'Add' method");

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

   //Include English in the Accept-Langauge header.
   myWebHeaderCollection->Add(S"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);
   myHttpWebResponse->Close();
}
//Catch exception if trying to add a restricted header.
catch(ArgumentException* e) {
   Console::WriteLine(e->Message);
} catch (WebException* e) {
   Console::WriteLine(S"\nWebException is thrown. \nMessage is : {0}", e->Message);
   if (e->Status == WebExceptionStatus::ProtocolError) {
      Console::WriteLine(S"Status Code : {0}", 
         __box((dynamic_cast<HttpWebResponse*>(e->Response))->StatusCode));
      Console::WriteLine(S"Status Description : {0}", 
         (dynamic_cast<HttpWebResponse*>(e->Response))->StatusDescription);
      Console::WriteLine(S"Server : {0}", 
         (dynamic_cast<HttpWebResponse*>(e->Response))->Server);
   }
} catch (Exception* e) {
   Console::WriteLine(S"Exception is thrown. Message is : {0}", e->Message);
}

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, Windows CE, Windows Mobile for Smartphone, Windows Mobile for Pocket PC

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

.NET Compact Framework

Supported in: 3.5, 2.0, 1.0

Community Additions

ADD
Show:
© 2014 Microsoft