HtmlString vs. MvcHtmlString

109

HtmlString vs. MvcHtmlString

Quais são as diferenças entre os dois, ou quando preferir um ao outro?

Editar:

Uma coisa a preferir MvcHtmlStringmais HtmlStringé o método de extensão IsNullOrEmptyde MvcHtmlString.

empilhador
fonte
Sim, bom lugar - eu não sabia que HtmlString não tinha isso.
Rup
1
Ao lado de IsNullOrEmpty, ele também tem alguns outros métodos estáticos (e uma propriedade) (PS: IsNullOrEmpty não é um método de extensão).
Matthijs Wessels

Respostas:

118

HtmlString existe apenas no ASP.NET 4.

MvcHtmlStringfoi um shim de compatibilidade adicionado ao MVC 2 para oferecer suporte ao .NET 3.5 e ao .NET 4. Agora que o MVC 3 é apenas .NET 4, é uma subclasse bastante trivial de, HtmlStringpresumivelmente, para MVC 2-> 3 para compatibilidade de origem.

Se você for voltar para MVC 2, pode fazer sentido usar IHtmlStringou varpara valores retornados de funções MVC. Como alternativa, acho que agora você pode mudar para o tempo HtmlStringtodo.

Rup
fonte
20

HtmlString foi introduzido apenas no .Net 4.0.

No ASP.Net 3.5 MVC 2.0, você deve usar MvcHtmlString.
No .Net 4.0, você deve usar HtmlString. (que é mais simples)

SLaks
fonte
3
A questão é sobre asp.net-4 e MVC-3.
stacker