Equivalent for MvcHtmlString in ASP.NET 5?

Asp .Net Core (v.5) replaced MvcHtmlString for a new HtmlString type. Don't confuse this with the HtmlString type that is a part of the System.Web namespace introduced in .NET 4.0 (MvcHtmlString inherits from this type).

NOTE: After April 28, 2016 the HtmlString type was moved to the Microsoft.AspNetCore.Html.Abstractions package. Remember to include this in your project.json in the dependencies node.

Additionally, you need to declare the using directive

using Microsoft.AspNetCore.Html;

or declare it by its fully qualified name:

Microsoft.AspNetCore.Html.HtmlString

If you want more information on the HtmlString type look at the HtmlAbstractions package source code located here


There is no longer need for MvcHtmlString (which added on top of HtmlString for compatibility reasons) so you can simply use Microsoft.AspNet.Mvc.Rendering.HtmlString.

As you can easily notice, the ViewComponents and Helpers of Asp.Net 5 are also using (by returning) the same HtmlString to the views.

Update (for ASP.NET Core 3.1):

You need to use Microsoft.AspNetCore.Html.HtmlString instead.