Export (0) Print
Expand All

WebHeaderCollection::Remove Method (String)

Removes the specified header from the collection.

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

public:
virtual void Remove(
	String^ name
) override

Parameters

name
Type: System::String

The name of the header to remove from the collection.

ExceptionCondition
ArgumentNullException

name is nullptr Empty.

ArgumentException

name is a restricted header.

-or-

name contains invalid characters.

Remove deletes the specified header from the collection. If the specified header does not exist, the method returns.

The following example uses the Remove method to remove a header from the WebHeaderCollection. After the header is removed, this example prints all existing headers to the screen to prove that it has been removed.

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;

   // Set the Cache-Control header.
   myWebHeaderCollection->Set( "Cache-Control", "no-cache" );

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

   // Print the headers of the request to console.
   Console::WriteLine( "Print request headers after adding Cache-Control for first request:" );
   printHeaders( myHttpWebRequest->Headers );

   // Remove the Cache-Control header for the new request.
   myWebHeaderCollection->Remove( "Cache-Control" );

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

   // Print the headers of the new request with->Item[Out] the* Cache-Control header.
   Console::WriteLine( "Print request headers after removing Cache-Control for the new request:" );
   printHeaders( myHttpWebRequest->Headers );
   myHttpWebResponse->Close();
}
// Catch exception if trying to remove a restricted header. 
catch ( ArgumentException^ e ) 
{
   Console::WriteLine( "Error : Trying to remove a restricted header" );
   Console::WriteLine( "ArgumentException is thrown. Message is : {0}", e->Message );
}
catch ( WebException^ e ) 
{
   Console::WriteLine( "WebException is thrown. Message 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;

   // Set the Cache-Control header.
   myWebHeaderCollection->Set(S"Cache-Control", S"no-cache");

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

   // Print the headers of the request to console.
   Console::WriteLine(S"Print request headers after adding Cache-Control for first request:");
   printHeaders(myHttpWebRequest->Headers);

   // Remove the Cache-Control header for the new request.
   myWebHeaderCollection->Remove(S"Cache-Control");

   // Get the response for the new request.
   myHttpWebResponse =
      dynamic_cast<HttpWebResponse*> (myHttpWebRequest->GetResponse());

   // Print the headers of the new request with->Item[Out] the* Cache-Control header.
   Console::WriteLine(S"Print request headers after removing Cache-Control for the new request:");
   printHeaders(myHttpWebRequest->Headers);
   myHttpWebResponse->Close();
}
// Catch exception if trying to remove a restricted header.
catch(ArgumentException* e) {
   Console::WriteLine(S"Error : Trying to remove a restricted header");
   Console::WriteLine(S"ArgumentException is thrown. Message is : {0}", e->Message);
} catch (WebException* e) {
   Console::WriteLine(S"WebException is thrown. Message 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