Export (0) Print
Expand All

WebHeaderCollection.Remove Method

Removes the specified header from the collection.

[Visual Basic]
Overrides Public Sub Remove( _
   ByVal name As String _
)
[C#]
public override void Remove(
 string name
);
[C++]
public: void Remove(
 String* name
);
[JScript]
public override function Remove(
   name : String
);

Parameters

name
The name of the header to remove from the collection.

Exceptions

Exception Type Condition
ArgumentNullException name is a null reference (Nothing in Visual Basic) Empty.
ArgumentException name is a restricted header.

-or-

name contains invalid characters.

Remarks

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

Example

[Visual Basic, C#, C++] 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.

[Visual Basic] 
Public Shared Sub Main()
  Try
        'Create a web request for "www.msn.com".
        Dim myHttpWebRequest As HttpWebRequest = CType(WebRequest.Create("http://www.msn.com"), HttpWebRequest)
        
        'Get the headers associated with the request.
        Dim myWebHeaderCollection As WebHeaderCollection = myHttpWebRequest.Headers
        
        'Set the Cache-Control header.
        myWebHeaderCollection.Set("Cache-Control", "no-cache")
        
        'Get the associated response for the above request.
        Dim myHttpWebResponse As HttpWebResponse = CType(myHttpWebRequest.GetResponse(), HttpWebResponse)
        
        '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")
        
        'Snippet for "Remove" method of "WebHeaderCollection" ends here.
        'Get the response for the new request.
        myHttpWebResponse = CType(myHttpWebRequest.GetResponse(), HttpWebResponse)
        
        'Print the headers of the new request without 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 e As ArgumentException
        Console.WriteLine("Error : Trying to remove a restricted header")
        Console.WriteLine(e.Message)
    Catch e As WebException
        Console.WriteLine(e.Message)
        If e.Status = WebExceptionStatus.ProtocolError Then
            Console.WriteLine("Status Code : {0}", CType(e.Response, HttpWebResponse).StatusCode)
            Console.WriteLine("Status Description : {0}", CType(e.Response, HttpWebResponse).StatusDescription)
            Console.WriteLine("Server : {0}", CType(e.Response, HttpWebResponse).Server)
        End If
    Catch e As Exception
        Console.WriteLine(e.Message)
    End Try

End Sub 'Main

[C#] 
try {
    // Create a web request for "www.msn.com".
     HttpWebRequest myHttpWebRequest = (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 = (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 = (HttpWebResponse) myHttpWebRequest.GetResponse();

    // Print the headers of the new request without 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 :" + e.Message);
}
catch(WebException e) {
    Console.WriteLine("WebException is thrown. Message is :" + e.Message);
    if(e.Status == WebExceptionStatus.ProtocolError) {
        Console.WriteLine("Status Code : {0}", ((HttpWebResponse)e.Response).StatusCode);
        Console.WriteLine("Status Description : {0}", ((HttpWebResponse)e.Response).StatusDescription);
        Console.WriteLine("Server : {0}", ((HttpWebResponse)e.Response).Server);
    }
}
catch(Exception e) {
    Console.WriteLine("Exception is thrown. Message is :" + e.Message);
}

[C++] 
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);
}

[JScript] No example is available for JScript. To view a Visual Basic, C#, or C++ example, click the Language Filter button Language Filter in the upper-left corner of the page.

Requirements

Platforms: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 family, .NET Compact Framework, Common Language Infrastructure (CLI) Standard

See Also

WebHeaderCollection Class | WebHeaderCollection Members | System.Net Namespace

Show:
© 2014 Microsoft