HttpServerUtility.UrlEncode Methode

Definition

Codiert eine Zeichenfolge für eine zuverlässige HTTP-Übertragung vom Webserver an einen Client über die URL.

Überlädt

UrlEncode(String)

Codiert eine Zeichenfolge als URL und gibt die codierte Zeichenfolge zurück.

UrlEncode(String, TextWriter)

Codiert eine Zeichenfolge als URL und sendet die Ausgabe an einen TextWriter-Ausgabestream.

Hinweise

UrlEncode ist eine bequeme Möglichkeit, über eine ASP.NET Anwendung zur Laufzeit auf die HttpUtility.UrlEncode -Methode zuzugreifen. Intern verwendetHttpUtility.UrlEncode, UrlEncode um Zeichenfolgen zu codieren.

Verwenden Sie zum Codieren oder Decodieren von Werten außerhalb einer Webanwendung die WebUtility-Klasse.

UrlEncode(String)

Codiert eine Zeichenfolge als URL und gibt die codierte Zeichenfolge zurück.

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

Parameter

s
String

Der als URL zu codierende Text.

Gibt zurück

Der URL-codierte Text.

Beispiele

Das folgende Beispiel zeigt, wie sie einen Wert, der als Abfragezeichenfolgenwert eines Links verwendet wird, urlcodieren. Der Code befindet sich in der CodeBehind-Datei für eine Webseite. Der zu codierende Wert ist in diesem Beispiel nur hartcodiert, um das Beispiel zu vereinfachen und den Werttyp anzuzeigen, den Sie urlcodieren können. In der Regel würden Sie einen Wert, den Sie vom Benutzer oder der Anforderung erhalten haben, urlcodieren. NextPage verweist auf ein HyperLink Steuerelement.

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

Das nächste Beispiel ähnelt dem vorherigen Beispiel, außer es zeigt, wie ein Wert aus einer Klasse, die sich nicht in der CodeBehind-Datei befindet, urlcodiert wird.

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

Hinweise

Die URL-Codierung stellt sicher, dass alle Browser Text in URL-Zeichenfolgen ordnungsgemäß übertragen. Zeichen wie fragezeichen (?), ampersand (&), Schrägstrich (/) und Leerzeichen können von einigen Browsern abgeschnitten oder beschädigt werden. Daher müssen diese Zeichen in <a> Tags oder in Abfragezeichenfolgen codiert werden, in denen die Zeichenfolgen von einem Browser in einer Anforderungszeichenfolge erneut gesendet werden können.

Diese Methode ist eine bequeme Möglichkeit, über eine ASP.NET Anwendung zur Laufzeit auf die HttpUtility.UrlEncode -Methode zuzugreifen. Intern verwendet HttpUtility.UrlEncode diese Methode zum Codieren von Zeichenfolgen.

Greifen Sie in der CodeBehind-Datei für eine ASP.NET Webseite über die Server -Eigenschaft auf eine instance der HttpServerUtility -Klasse zu. Verwenden Sie HttpContext.Current.Server in einer Klasse, die sich nicht in einer CodeBehind-Datei befindet, um auf eine instance der HttpServerUtility -Klasse zuzugreifen.

Verwenden Sie außerhalb einer Webanwendung die WebUtility -Klasse, um Werte zu codieren oder zu decodieren.

Gilt für:

UrlEncode(String, TextWriter)

Codiert eine Zeichenfolge als URL und sendet die Ausgabe an einen TextWriter-Ausgabestream.

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)

Parameter

s
String

Die zu codierende Textzeichenfolge.

output
TextWriter

Der TextWriter-Ausgabestream, der die kodierte Zeichenfolge enthält.

Beispiele

Im folgenden Beispiel wird eine Zeichenfolge für die Übertragung per HTTP codiert. Es codiert die Zeichenfolge mit dem Namen TestString, die den Text "This is a <Test String>." enthält, und kopiert sie in die Zeichenfolge namens EncodedString "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()
   

Hinweise

Die URL-Codierung stellt sicher, dass alle Browser Text in URL-Zeichenfolgen ordnungsgemäß übertragen. Zeichen wie fragezeichen (?), ampersand (&), Schrägstrich (/) und Leerzeichen können von einigen Browsern abgeschnitten oder beschädigt werden. Daher müssen diese Zeichen in <a> Tags oder in Abfragezeichenfolgen codiert werden, in denen die Zeichenfolgen von einem Browser in einer Anforderungszeichenfolge erneut gesendet werden können.

UrlEncode ist eine bequeme Möglichkeit, über eine ASP.NET Anwendung zur Laufzeit auf die HttpUtility.UrlEncode -Methode zuzugreifen. Intern verwendetHttpUtility.UrlEncode, UrlEncode um Zeichenfolgen zu codieren.

Verwenden Sie zum Codieren oder Decodieren von Werten außerhalb einer Webanwendung die WebUtility-Klasse.

Gilt für: