HttpServerUtility.UrlEncode Метод

Определение

Кодирует строку для надежной передачи HTTP-данных в кодировке URL с веб-сервера клиенту.Encodes a string for reliable HTTP transmission from the Web server to a client through the URL.

Перегрузки

UrlEncode(String)

Кодирует строку в кодировке URL и возвращает закодированную строку.URL-encodes a string and returns the encoded string.

UrlEncode(String, TextWriter)

Кодирует в URL строку и отправляет конечные выходные данные в поток выходных данных TextWriter.URL-encodes a string and sends the resulting output to a TextWriter output stream.

Комментарии

UrlEncode— Это удобный способ доступа к HttpUtility.UrlEncode методу во время выполнения из приложения ASP.NET.UrlEncode is a convenient way to access the HttpUtility.UrlEncode method at run time from an ASP.NET application. Внутренне HttpUtility.UrlEncode использует для кодирования строк. UrlEncodeInternally, UrlEncode uses HttpUtility.UrlEncode to encode strings.

Чтобы закодировать или декодировать значения вне веб-приложения, используйте класс WebUtility.To encode or decode values outside of a web application, use the WebUtility class.

UrlEncode(String)

Кодирует строку в кодировке URL и возвращает закодированную строку.URL-encodes a string and returns the encoded string.

public:
 System::String ^ UrlEncode(System::String ^ s);
public string UrlEncode (string s);
member this.UrlEncode : string -> string
Public Function UrlEncode (s As String) As String

Параметры

s
String

Текст для преобразования в кодировку URL.The text to URL-encode.

Возвраты

Текст в кодировке URL.The URL-encoded text.

Примеры

В следующем примере показано, как кодировать значение, используемое в качестве значения строки запроса для гиперссылки, в виде URL-адреса.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. Значение для кодирования жестко закодировано в этом примере только для упрощения примера и отображения типа значения, которое можно кодировать в URL-адресе.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. Как правило, URL-адрес кодирует значение, полученное от пользователя или запроса.Typically, you would URL-encode a value that you received from the user or the request. NextPageссылается на HyperLink элемент управления.NextPage refers to a HyperLink control.

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);
    }             
}
Public Class _Default
    Inherits Page

    Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs) Handles Me.Load
        Dim destinationURL = "http://www.contoso.com/default.aspx?user=test"

        NextPage.NavigateUrl = "~/Finish?url=" + Server.UrlEncode(destinationURL)
    End Sub
End Class

Следующий пример похож на предыдущий пример, за исключением того, что он показывает, как кодировать значение из класса, не находящийся в файле кода программной части.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.

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

        return "~/Finish?url=" + HttpContext.Current.Server.UrlEncode(destinationURL);
    }
}
Public Class SampleClass
    Public Function GetUrl() As String
        Dim destinationURL = "http://www.contoso.com/default.aspx?user=test"

        Return "~/Finish?url=" + HttpContext.Current.Server.UrlEncode(destinationURL)
    End Function
End Class

Комментарии

Кодировка URL гарантирует, что все браузеры будут правильно передавать текст в строки URL-адреса.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. В результате эти символы должны быть закодированы в <a> тегах или в строках запроса, где строки могут быть повторно отправлены браузером в строке запроса.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.

Этот метод является удобным способом доступа HttpUtility.UrlEncode к методу во время выполнения из приложения ASP.NET.This method is a convenient way to access the HttpUtility.UrlEncode method at run time from an ASP.NET application. На внутреннем уровне этот метод HttpUtility.UrlEncode использует для кодирования строк.Internally, this method uses HttpUtility.UrlEncode to encode strings.

В файле кода программной части для веб-страницы ASP.NET необходимо получить доступ к экземпляру HttpServerUtility класса Server через свойство.In the code-behind file for an ASP.NET web page, access an instance of the HttpServerUtility class through the Server property. В классе, который не находится в файле кода программной части, используйте HttpContext.Current.Server для доступа к экземпляру HttpServerUtility класса.In a class that is not in a code-behind file, use HttpContext.Current.Server to access an instance of the HttpServerUtility class.

За пределами веб-приложения используйте WebUtility класс для кодирования или декодирования значений.Outside of a web application, use the WebUtility class to encode or decode values.

UrlEncode(String, TextWriter)

Кодирует в URL строку и отправляет конечные выходные данные в поток выходных данных TextWriter.URL-encodes a string and sends the resulting output to a TextWriter output stream.

public:
 void UrlEncode(System::String ^ s, System::IO::TextWriter ^ output);
public void UrlEncode (string s, System.IO.TextWriter output);
member this.UrlEncode : string * System.IO.TextWriter -> unit
Public Sub UrlEncode (s As String, output As TextWriter)

Параметры

s
String

Кодируемая текстовая строка.The text string to encode.

output
TextWriter

Поток выходных данных TextWriter, содержащий зашифрованную строку.The TextWriter output stream that contains the encoded string.

Примеры

Следующий пример кодирует строку для передачи по протоколу HTTP.The following example encodes a string for transmission by HTTP. Он кодирует строку с именем TestString, которая содержит текст "это <тестовая строка >", и копирует его в строку с именем EncodedString "this +-+ a +% 3cTest + строка% 3E.".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.".

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

Комментарии

Кодировка URL гарантирует, что все браузеры будут правильно передавать текст в строки URL-адреса.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. В результате эти символы должны быть закодированы в <a> тегах или в строках запроса, где строки могут быть повторно отправлены браузером в строке запроса.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— Это удобный способ доступа к HttpUtility.UrlEncode методу во время выполнения из приложения ASP.NET.UrlEncode is a convenient way to access the HttpUtility.UrlEncode method at run time from an ASP.NET application. Внутренне HttpUtility.UrlEncode использует для кодирования строк. UrlEncodeInternally, UrlEncode uses HttpUtility.UrlEncode to encode strings.

Чтобы закодировать или декодировать значения вне веб-приложения, используйте класс WebUtility.To encode or decode values outside of a web application, use the WebUtility class.

Применяется к