Export (0) Print
Expand All

HttpListenerResponse.SetCookie Method

Adds or updates a Cookie in the collection of cookies sent with this response.

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

member SetCookie : 
        cookie:Cookie -> unit

Parameters

cookie
Type: System.Net.Cookie

A Cookie for this response.

ExceptionCondition
ArgumentNullException

cookie is a null reference (Nothing in Visual Basic).

ArgumentException

The cookie already exists in the collection and could not be replaced.

Two cookies are considered the same if the values of their Name, Domain, and Path properties are the same. If these three pieces of information are the same, the method attempts to update the cookie. The name and domain comparisons are not case sensitive, but the path comparison is case sensitive.

The following code example demonstrates calling this method.

// This example requires the System and System.Net namespaces. 
public static void SimpleCookieExample(string[] prefixes)
{
    // Create a listener.
    HttpListener listener = new HttpListener();
    // Add the prefixes. 
    foreach (string s in prefixes)
    {
        listener.Prefixes.Add(s);
    }
    listener.Start();
    Console.WriteLine("Listening...");
    // Note: The GetContext method blocks while waiting for a request. 
    HttpListenerContext context = listener.GetContext();
    HttpListenerRequest request = context.Request;

    // This application sends a cookie to the client marking the time  
    // they visited. 
    Cookie timeStampCookie = new Cookie("VisitDate", DateTime.Now.ToString());
    // Obtain a response object.
    HttpListenerResponse response = context.Response;
    // Add the cookie to the response.
    response.SetCookie(timeStampCookie);
    // Construct a response. 
    string responseString = "<HTML><BODY> Hello world!</BODY></HTML>";
    response.ContentEncoding = System.Text.Encoding.UTF8;
    byte[] buffer = System.Text.Encoding.UTF8.GetBytes(responseString);
    // Send the response.
    response.Close(buffer, true);
    listener.Stop();
}

.NET Framework

Supported in: 4.5.2, 4.5.1, 4.5, 4, 3.5, 3.0, 2.0

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)

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

Show:
© 2014 Microsoft