Export (0) Print
Expand All

HttpListenerResponse.CopyFrom Method

Copies properties from the specified HttpListenerResponse to this response.

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

public void CopyFrom(
	HttpListenerResponse templateResponse
)

Parameters

templateResponse
Type: System.Net.HttpListenerResponse
The HttpListenerResponse instance to copy.

If you regularly change many properties from their default values to a fixed set of new values, it is convenient to use an HttpListenerResponse instance as a template. Customize the template response once and, instead of configuring each response separately, call the CopyFrom method to configure a new response based on property values in the template response.

The following properties are copied from templateResponse to the current instance.

The following code example demonstrates creating a response by copying a template response.


static string message403;
static void SendBadCertificateResponse(HttpListenerResponse response)
{
    StringBuilder message = new StringBuilder ();
    message.Append ("<HTML><BODY>");
    message.Append ("<p> Error message 403: Access is denied due to a missing or invalid client certificate.</p>");
    message.Append ("</BODY></HTML>");
    message403 = message.ToString();

    // Set up an authentication error response template.
    response.StatusCode = (int) HttpStatusCode.Forbidden;
    response.StatusDescription = "403 Forbidden";
    response.ProtocolVersion = new Version("1.1");
    response.SendChunked = false;

    // Turn the error message into a byte array using the 
    // encoding from the response when present.
    System.Text.Encoding encoding = response.ContentEncoding;
    if (encoding == null)
    {
        encoding = System.Text.Encoding.UTF8;
        response.ContentEncoding = encoding;
    }

    byte[] buffer = encoding.GetBytes (message403);
    response.ContentLength64 = buffer.Length;
    // Write the error message.
    System.IO.Stream stream = response.OutputStream;
    stream.Write(buffer,0,buffer.Length);
    // Send the response.
    response.Close();
}


.NET Framework

Supported in: 4, 3.5, 3.0, 2.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.

Community Additions

ADD
Show:
© 2014 Microsoft