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

  • Howcast

    Howcast

    4 EKİM 2007
  • Justin Case

    Justin Case

    3 EKİM 2011
  • Lin Steven

    Lin Steven

    17 EKİM 2006