Export (0) Print
Expand All

HttpServerUtility.UrlDecode Method (String)

URL-decodes a string and returns the decoded string.

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

public string UrlDecode(
	string s


Type: System.String

The text string to decode.

Return Value

Type: System.String
The decoded text.

URL encoding ensures that all browsers will correctly transmit text in URL strings. Characters such as a question mark (?), ampersand (&), slash mark (/), and spaces might be truncated or corrupted by some browsers. As a result, these characters must be encoded in <a> tags or in query strings where the strings can be re-sent by a browser in a request string.

This method is a convenient way to access the HttpUtility.UrlDecode method at run time from an ASP.NET application. Internally, this method uses HttpUtility.UrlDecode to decode strings.

In the code-behind file for an ASP.NET web page, access an instance of the HttpServerUtility class through the Server property. In a class that is not in a code-behind file, use HttpContext.Current.Server to access an instance of the HttpServerUtility class.

Outside of a web application, use the WebUtility class to encode or decode values.

The following example shows how to URL-decode a value that is retrieved from the query string. The code resides in the code-behind file for a web page. ReturnPage refers to a HyperLink control.

public partial class _Default : Page
    protected void Page_Load(object sender, EventArgs e)
        string returnUrl = Server.UrlDecode(Request.QueryString["url"]);
        ReturnPage.NavigateUrl = returnUrl;

The next example is similar to the previous example except it shows how to URL-decode a value from within a class that is not in the code-behind file.

public class SampleClass
    public string RetrievePassedUrl()
        return HttpContext.Current.Server.UrlDecode(HttpContext.Current.Request.QueryString["url"]);

.NET Framework

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

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.

© 2014 Microsoft