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

  • Bryan Adams

    Bryan Adams

    30 Mart 2006
  • Google Developers

    Google Devel

    23 AĞUSTOS 2007
  • MovieZoneET

    MovieZoneET

    22 Aralık 2009