HttpServerUtility.UrlDecode Метод

Определение

Декодирует строку, закодированную для передачи HTTP, а затем отправляется на сервер в URL-адресе.

Чтобы кодировать или декодировать значения за пределами веб-приложения, используйте WebUtility класс.

Перегрузки

Имя Описание
UrlDecode(String)

URL-декодирует строку и возвращает декодированную строку.

UrlDecode(String, TextWriter)

Декодирует HTML-строку, полученную в URL-адресе, и отправляет полученные выходные данные в выходной TextWriter поток.

UrlDecode(String)

URL-декодирует строку и возвращает декодированную строку.

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

Параметры

s
String

Текстовая строка для декодирования.

Возвращаемое значение

Декодированные тексты.

Примеры

В следующем примере показано, как декодировать значение, полученное из строки запроса. Код находится в файле программной части веб-страницы. ReturnPage ссылается на HyperLink элемент управления.

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

    Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs) Handles Me.Load
        Dim returnUrl = Server.UrlDecode(Request.QueryString("url"))
        ReturnPage.NavigateUrl = returnUrl
    End Sub
End Class

Следующий пример аналогичен предыдущему примеру, кроме того, что он показывает, как декодировать значение из класса, который не находится в файле программной части.

public class SampleClass
{
    public string RetrievePassedUrl()
    {
        return HttpContext.Current.Server.UrlDecode(HttpContext.Current.Request.QueryString["url"]);
    }
}
Public Class SampleClass
    Public Function RetrievePassedUrl() As String
        Return HttpContext.Current.Server.UrlDecode(HttpContext.Current.Request.QueryString("url"))
    End Function
End Class

Комментарии

Кодировка URL-адресов гарантирует, что все браузеры будут правильно передавать текст в строках URL-адресов. Символы, такие как вопросительный знак (?), амперсанд (&), знак косой черты (/) и пробелы могут быть усечены или повреждены некоторыми браузерами. В результате эти символы должны быть закодированы в <a> тегах или строках запроса, где строки могут быть повторно отправлены браузером в строке запроса.

Этот метод является удобным способом доступа к методу HttpUtility.UrlDecode во время выполнения из приложения ASP.NET. Внутри этого метода используется HttpUtility.UrlDecode для декодирования строк.

В файле кода для веб-страницы ASP.NET доступ к экземпляру класса HttpServerUtility через свойство Server. В классе, который не находится в файле программной части, используйте HttpContext.Current.Server для доступа к экземпляру HttpServerUtility класса.

За пределами веб-приложения используйте WebUtility класс для кодирования или декодации значений.

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

UrlDecode(String, TextWriter)

Декодирует HTML-строку, полученную в URL-адресе, и отправляет полученные выходные данные в выходной TextWriter поток.

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

Параметры

s
String

Html-строка для декодирования.

output
TextWriter

Выходной TextWriter поток, содержащий декодированную строку.

Примеры

Следующий пример декодирует строку с именем EncodedString (полученную в URL-адресе) в строку с именем DecodedString.

StringWriter writer = new StringWriter();
Server.UrlDecode(EncodedString, writer);
String DecodedString = writer.ToString();

Dim writer As New StringWriter
Server.UrlDecode(EncodedString, writer)
Dim DecodedString As String = writer.ToString()
   

Комментарии

Кодировка URL-адресов гарантирует, что все браузеры будут правильно передавать текст в строках URL-адресов. Символы, такие как вопросительный знак (?), амперсанд (&), знак косой черты (/) и пробелы могут быть усечены или повреждены некоторыми браузерами. В результате эти символы должны быть закодированы в <a> тегах или строках запроса, где строки могут быть повторно отправлены браузером в строке запроса.

UrlDecode — удобный способ доступа к методу HttpUtility.UrlDecode во время выполнения из приложения ASP.NET. Внутренне используется UrlDecodeHttpUtility.UrlDecode для декодирования строк.

Чтобы кодировать или декодировать значения за пределами веб-приложения, используйте WebUtility класс.

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