SORU
19 ŞUBAT 2010, Cuma


Bir MvcHtmlString nedir ve ne zaman kullanmalıyım?

MvcHtmlString documentation pek aydınlatıcı

Tekrar kodlanmış temsil edilmemesi gereken HTML olarak kodlanmış bir dize.

Bu ne anlama geldiklerini bana net değil. Bazı HTML yardımcı yöntemler özel yardımcıların online sıradan bir dize döndürür gördüm MvcHtmlString, ama bazı örnekler dönüş gibi görünüyor.

Soru:

MvcHtmlString bir nedir?

string ve yardımcısı üzerinde MvcHtmlString versa seçmeliyim? Neden?

CEVAP
19 ŞUBAT 2010, Cuma


ASP.NET 4 yeni kodu nugget bir sözdizimi <%: %> tanıttı. Esasen, <%: foo %> <%= HttpUtility.HtmlEncode(foo) %> çevirir. Takım geliştiriciler mümkün olan her yerde XSS önlemek için <%= %> yerine <%: %> kullanmak için almak için çalışıyor.

Ancak, bu kod bir nugget zaten onun sonucu, kodlar, <%: %> sözdizimi olacaktır sorun da tanıttıyeniden kodlamak. Bu İHtmlString arayüz tanıtımı (yeni .tarafından çözüldü NET 4). Eğer() foo<%: foo() %> döner bir İHtmlString, <%: %> sözdizimi olmaz yeniden kodlamak.

ASP.NET 4 arabirim İHtmlString uygulayan 2 yardımcılarının dönüş MvcHtmlString, MVC. Bu nedenle ASP.NET 4, sonuç <%: Html.*() %> çift kodlanmaz.

Düzenleme:

Bu yeni sözdizimi hemen yarar görüşlerinizi biraz daha temiz olmasıdır. Örneğin, <%: ViewData["anything"] %> yerine <%= Html.Encode(ViewData["anything"]) %> yazabilirsiniz.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • GamingAndTech

    GamingAndTec

    16 NİSAN 2013
  • graham025

    graham025

    25 NİSAN 2006
  • Julian Smith

    Julian Smith

    31 EKİM 2006