HttpServerUtility.HtmlEncode Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Tarayıcıda görüntülenecek bir dizeyi kodlar.
Bir web uygulamasının dışındaki değerleri kodlamak veya kodunu çözmek için sınıfını WebUtility kullanın.
Aşırı Yüklemeler
HtmlEncode(String) |
HTML bir dizeyi kodlar ve kodlanmış dizeyi döndürür. |
HtmlEncode(String, TextWriter) |
HTML, bir dizeyi kodlar ve sonuçta elde edilen çıkışı bir TextWriter çıkış akışına gönderir. |
HtmlEncode(String)
HTML bir dizeyi kodlar ve kodlanmış dizeyi döndürür.
public:
System::String ^ HtmlEncode(System::String ^ s);
public string HtmlEncode (string s);
member this.HtmlEncode : string -> string
Public Function HtmlEncode (s As String) As String
Parametreler
- s
- String
Kodlanan metin dizesi.
Döndürülenler
HTML ile kodlanmış metin.
Örnekler
Aşağıdaki örnekte, güvenli olmayan kod kodlayan bir değerin HTML 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 HTML ile kodlanabileceğiniz değerin türünü göstermek için sabit kodlanmıştır. Normalde, kullanıcıdan veya istekten aldığınız bir değeri HTML ile kodlarsınız.
Result
bir Literal
denetime başvurur.
public partial class _Default : Page
{
protected void Page_Load(object sender, EventArgs e)
{
Result.Text = Server.HtmlEncode("<script>unsafe</script>");
}
}
Public Class _Default
Inherits Page
Protected Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs) Handles Me.Load
Result.Text = Server.HtmlEncode("<script>unsafe</script>")
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 HTML kodlamasını gösterir.
public class SampleClass
{
public string GetEncodedText()
{
return HttpContext.Current.Server.HtmlEncode("<script>unsafe</script>");
}
}
Public Class SampleClass
Public Function GetEncodedText() As String
Return HttpContext.Current.Server.HtmlEncode("<script>unsafe</script>")
End Function
End Class
Açıklamalar
HTML kodlaması, metnin tarayıcıda doğru görüntülenmesini ve tarayıcı tarafından HTML olarak yorumlanmamasını sağlar. Örneğin, bir metin dizesi küçüktür işareti (<) veya büyüktür işareti ()> içeriyorsa, tarayıcı bu karakterleri bir HTML etiketinin açma veya kapatma köşeli ayracı olarak yorumlar. Karakterler HTML kodlamalı olduğunda, dizelere dönüştürülür ve <
>
bu da tarayıcının küçüktür ve büyüktür işaretini doğru şekilde görüntülemesine neden olur.
Bu yöntem, ASP.NET bir uygulamadan çalışma zamanında yöntemine erişmek HttpUtility.HtmlEncode için kullanışlı bir yoldur. Bu yöntem dahili olarak dizeleri kodlamak için kullanır HttpUtility.HtmlEncode .
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
HtmlEncode(String, TextWriter)
HTML, bir dizeyi kodlar ve sonuçta elde edilen çıkışı bir TextWriter çıkış akışına gönderir.
public:
void HtmlEncode(System::String ^ s, System::IO::TextWriter ^ output);
public void HtmlEncode (string s, System.IO.TextWriter output);
member this.HtmlEncode : string * System.IO.TextWriter -> unit
Public Sub HtmlEncode (s As String, output As TextWriter)
Parametreler
- s
- String
Kodlanacak dize.
- 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ı TestString
dizeyi kodlar ve "Bu bir <<Test Dizesidir>>" adlı EncodedString
dizeye kopyalar.
String TestString = "This is a <Test String>.";
StringWriter writer = new StringWriter();
Server.HtmlEncode(TestString, writer);
String EncodedString = writer.ToString();
Dim TestString As String = "This is a <Test String>."
Dim writer As New StringWriter
Server.HtmlEncode(TestString, writer)
Dim EncodedString As String = writer.ToString()
Açıklamalar
HTML kodlaması, metnin tarayıcı tarafından HTML olarak yorumlanmaması için tarayıcıda doğru şekilde görüntülenmesini sağlar. Örneğin, bir metin dizesi küçüktür işareti (<) veya büyüktür işareti ()> içeriyorsa, tarayıcı bu karakterleri bir HTML etiketinin açma veya kapatma köşeli ayracı olarak yorumlar. Bu iki karakterin HTML kodlaması sırasıyla ve >
şeklindedir <
ve bu da tarayıcının küçüktür ve işaretinden büyük olan işaretleri doğru şekilde görüntülemesine neden olur.
HtmlEncode bir ASP.NET uygulamasından HttpUtility.HtmlEncode çalışma zamanında yöntemine erişmek için kullanışlı bir yoldur. Dahili olarak, HtmlEncode dizeleri kodlamak için kullanır HttpUtility.HtmlEncode .
Bir web uygulamasının dışındaki değerleri kodlamak veya kodunu çözmek için sınıfını WebUtility kullanın.