HttpServerUtility.UrlEncode Yöntem

Tanım

Web sunucusundan URL aracılığıyla istemciye güvenilir HTTP iletimi için bir dizeyi kodlar.

Aşırı Yüklemeler

UrlEncode(String)

URL bir dizeyi kodlar ve kodlanmış dizeyi döndürür.

UrlEncode(String, TextWriter)

URL bir dizeyi kodlar ve sonuçta elde edilen çıkışı bir TextWriter çıkış akışına gönderir.

Açıklamalar

UrlEncode bir ASP.NET uygulamasından HttpUtility.UrlEncode çalışma zamanında yöntemine erişmek için kullanışlı bir yoldur. Dahili olarak, UrlEncode dizeleri kodlamak için kullanır HttpUtility.UrlEncode .

Bir web uygulamasının dışındaki değerleri kodlamak veya kodunu çözmek için sınıfını WebUtility kullanın.

UrlEncode(String)

URL bir dizeyi kodlar ve kodlanmış dizeyi döndürür.

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

Parametreler

s
String

URL ile kodlanan metin.

Döndürülenler

URL ile kodlanmış metin.

Örnekler

Aşağıdaki örnekte, köprü sorgu dizesi değeri olarak kullanılan bir değerin URL kodlaması gösterilmektedir. Kod, bir web sayfasının arka planda kod dosyasında bulunur. Kodlanan değer bu örnekte yalnızca örneği basitleştirmek ve URL ile kodlanabileceğiniz değer türünü göstermek için sabit kodlanmıştır. Normalde, kullanıcıdan veya istekten aldığınız bir değeri URL ile kodlarsınız. NextPage bir HyperLink denetime başvurur.

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

Sonraki örnek önceki örneğe benzer, ancak arka planda kod dosyasında olmayan bir sınıfın içinden bir değerin URL ile nasıl kodlandığını gösterir.

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

Açıklamalar

URL kodlama, tüm tarayıcıların URL dizelerindeki metinleri doğru şekilde iletmesini sağlar. Soru işareti (?), ve işareti (&), eğik çizgi (/) ve boşluk gibi karakterler bazı tarayıcılar tarafından kesilebilir veya bozulabilir. Sonuç olarak, bu karakterler etiketlerde <a> veya bir istek dizesindeki bir tarayıcı tarafından yeniden gönderilebilen sorgu dizelerinde kodlanmalıdır.

Bu yöntem, ASP.NET bir uygulamadan çalışma zamanında yöntemine erişmek HttpUtility.UrlEncode için kullanışlı bir yoldur. Bu yöntem dahili olarak dizeleri kodlamak için kullanır HttpUtility.UrlEncode .

bir ASP.NET web sayfasının arka planda kod dosyasında, özelliği aracılığıyla sınıfın HttpServerUtility bir örneğine erişin Server . Arka planda kod dosyası olmayan bir sınıfta, sınıfının bir örneğine HttpServerUtility erişmek için kullanınHttpContext.Current.Server.

Bir web uygulamasının dışında, değerleri kodlamak veya kodunu çözmek için sınıfını kullanın WebUtility .

Şunlara uygulanır

UrlEncode(String, TextWriter)

URL bir dizeyi kodlar ve sonuçta elde edilen çıkışı bir TextWriter çıkış akışına gönderir.

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)

Parametreler

s
String

Kodlanan metin dizesi.

output
TextWriter

TextWriter Kodlanmış dizeyi içeren çıkış akışı.

Örnekler

Aşağıdaki örnek, HTTP ile iletim için bir dizeyi kodlar. "Bu bir <Test Dizesidir>" metnini içeren adlı TestStringdizeyi kodlar ve "This+is+a+%3cTest+String%3e" adlı EncodedString dizeye kopyalar.

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()
   

Açıklamalar

URL kodlama, tüm tarayıcıların URL dizelerindeki metinleri doğru şekilde iletmesini sağlar. Soru işareti (?), ve işareti (&), eğik çizgi (/) ve boşluk gibi karakterler bazı tarayıcılar tarafından kesilebilir veya bozulabilir. Sonuç olarak, bu karakterler etiketlerde <a> veya bir istek dizesindeki bir tarayıcı tarafından yeniden gönderilebilen sorgu dizelerinde kodlanmalıdır.

UrlEncode bir ASP.NET uygulamasından HttpUtility.UrlEncode çalışma zamanında yöntemine erişmek için kullanışlı bir yoldur. Dahili olarak, UrlEncode dizeleri kodlamak için kullanır HttpUtility.UrlEncode .

Bir web uygulamasının dışındaki değerleri kodlamak veya kodunu çözmek için sınıfını WebUtility kullanın.

Şunlara uygulanır