HttpServerUtility.UrlEncode Method

Definition

Encodes a string for reliable HTTP transmission from the Web server to a client through the URL.

Overloads

UrlEncode(String)

URL-encodes a string and returns the encoded string.

UrlEncode(String, TextWriter)

URL-encodes a string and sends the resulting output to a TextWriter output stream.

Remarks

UrlEncode is a convenient way to access the HttpUtility.UrlEncode method at run time from an ASP.NET application. Internally, UrlEncode uses HttpUtility.UrlEncode to encode strings.

To encode or decode values outside of a web application, use the WebUtility class.

UrlEncode(String)

URL-encodes a string and returns the encoded string.

C#
public string UrlEncode(string s);

Parameters

s
String

The text to URL-encode.

Returns

The URL-encoded text.

Examples

The following example shows how to URL-encode a value that is used as a query string value of a hyperlink. The code resides in the code-behind file for a web page. The value to encode is hard-coded in this example only to simplify the example and show the type of value you might URL-encode. Typically, you would URL-encode a value that you received from the user or the request. NextPage refers to a HyperLink control.

C#
public partial class _Default : Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        string destinationURL = "http://www.contoso.com/default.aspx?user=test";

        NextPage.NavigateUrl = "~/Finish?url=" + Server.UrlEncode(destinationURL);
    }             
}

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

C#
public class SampleClass
{
    public string GetUrl()
    {
        string destinationURL = "http://www.contoso.com/default.aspx?user=test";

        return "~/Finish?url=" + HttpContext.Current.Server.UrlEncode(destinationURL);
    }
}

Remarks

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.UrlEncode method at run time from an ASP.NET application. Internally, this method uses HttpUtility.UrlEncode to encode 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.

Applies to

.NET Framework 4.8.1 i druge verzije
Proizvod Verzije
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1

UrlEncode(String, TextWriter)

URL-encodes a string and sends the resulting output to a TextWriter output stream.

C#
public void UrlEncode(string s, System.IO.TextWriter output);

Parameters

s
String

The text string to encode.

output
TextWriter

The TextWriter output stream that contains the encoded string.

Examples

The following example encodes a string for transmission by HTTP. It encodes the string named TestString, which contains the text "This is a <Test String>.", and copies it into the string named EncodedString as "This+is+a+%3cTest+String%3e.".

C#
String TestString = "This is a <Test String>.";
StringWriter writer = new StringWriter();
Server.UrlEncode(TestString, writer);
String EncodedString = writer.ToString();

Remarks

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.

UrlEncode is a convenient way to access the HttpUtility.UrlEncode method at run time from an ASP.NET application. Internally, UrlEncode uses HttpUtility.UrlEncode to encode strings.

To encode or decode values outside of a web application, use the WebUtility class.

Applies to

.NET Framework 4.8.1 i druge verzije
Proizvod Verzije
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1