HtmlString a MvcHtmlString

109

HtmlString vs. MvcHtmlString

Jakie są różnice między tymi dwoma lub kiedy preferować jedno nad drugim?

Edytować:

Jedną z rzeczy, wolą MvcHtmlStringna HtmlStringto metoda rozszerzenie IsNullOrEmptyz MvcHtmlString.

sztaplarka
źródło
Tak, dobre miejsce - nie zdawałem sobie sprawy, że HtmlString tego nie ma.
Rup
1
Oprócz IsNullOrEmpty ma również kilka innych metod statycznych (i jedną właściwość) (PS: IsNullOrEmpty nie jest metodą rozszerzającą).
Matthijs Wessels

Odpowiedzi:

118

HtmlString istnieje tylko w ASP.NET 4.

MvcHtmlStringbył podkładką kompatybilności dodaną do MVC 2, aby obsługiwać zarówno .NET 3.5, jak i .NET 4. Teraz, gdy MVC 3 to tylko .NET 4, jest to dość trywialna podklasa, HtmlStringprawdopodobnie dla MVC 2-> 3 ze względu na zgodność ze źródłami.

Jeśli kiedykolwiek zamierzasz wrócić do MVC 2, może być sensowne użycie IHtmlStringlub vardla wartości zwracanych z funkcji MVC. Alternatywnie myślę, że możesz teraz po prostu przejść do HtmlStringcałości.

Rup
źródło
20

HtmlString został wprowadzony tylko w .Net 4.0.

W ASP.Net 3.5 MVC 2.0 należy używać MvcHtmlString.
W .Net 4.0 powinieneś używać HtmlString. (co jest prostsze)

SLaks
źródło
3
Pytanie dotyczy asp.net-4 i MVC-3.
układacz