HtmlString против MvcHtmlString


109

HtmlString vs. MvcHtmlString

В чем разница между этими двумя и когда предпочесть одно другому?

Редактировать:

Одна вещь , чтобы предпочесть MvcHtmlStringболее HtmlStringметод расширения IsNullOrEmptyв MvcHtmlString.


Да, хорошее место - я не знал, что в HtmlString этого нет.
Rup

1
Рядом с IsNullOrEmpty он также имеет некоторые другие статические методы (и одно свойство) (PS: IsNullOrEmpty не является методом расширения).
Matthijs Wessels

Ответы:


118

HtmlString существует только в ASP.NET 4.

MvcHtmlStringбыла прокладка совместимости, добавленная в MVC 2 для поддержки как .NET 3.5, так и .NET 4. Теперь, когда MVC 3 - это только .NET 4, это довольно тривиальный подкласс, HtmlStringпредположительно для MVC 2-> 3 для совместимости с исходным кодом.

Если вы когда-нибудь собираетесь вернуться к MVC 2, возможно, имеет смысл использовать IHtmlStringили varдля значений, возвращаемых функциями MVC. В качестве альтернативы, я думаю, теперь вы можете просто переключиться на HtmlStringвсе.


20

HtmlString был представлен только в .Net 4.0.

В ASP.Net 3.5 MVC 2.0 вы должны использовать MvcHtmlString.
В .Net 4.0 вы должны использовать HtmlString. (что проще)


3
Речь идет об asp.net-4 и MVC-3.
stacker

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.