Is there a native way to convert Tagbuilder to String in Net Core? This only is for ASP Net 5. Convert IHtmlContent/TagBuilder to string in C#
Convert value of TagBuilder into a String
I think Microsoft had a replacement function for this in Net Core
public static string GetString(IHtmlContent content)
{
using (var writer = new System.IO.StringWriter())
{
content.WriteTo(writer, HtmlEncoder.Default);
return writer.ToString();
}
}
The same WriteTo
method is available in aspnetcore.
You should be able to continue to benefit from creating the same GetString method, as TagBuilder
inherits from IHtmlContent
.
public static class IHtmlContentExtensions
{
public static string GetString(this Microsoft.AspNetCore.Html.IHtmlContent content)
{
using (var writer = new System.IO.StringWriter())
{
content.WriteTo(writer, System.Text.Encodings.Web.HtmlEncoder.Default);
return writer.ToString();
}
}
}
Then from your code, you can just call
TagBuilder myTag = // ...
string tagAsText = myTag.GetString();