Net Core:如何在 C# 中将 TagBuilder 转换为字符串?
Net Core: How to Convert TagBuilder to String in C#?
Net Core 中是否有原生的方法将 Tagbuilder 转换为 String?这仅适用于 ASP Net 5。
将 TagBuilder 的值转换为字符串
我认为微软在 Net Core 中对此有替代功能
public static string GetString(IHtmlContent content)
{
using (var writer = new System.IO.StringWriter())
{
content.WriteTo(writer, HtmlEncoder.Default);
return writer.ToString();
}
}
相同的 WriteTo
方法在 aspnetcore 中可用。
您应该能够继续受益于创建相同的 GetString 方法,因为 TagBuilder
继承自 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();
}
}
}
然后从你的代码中,你可以调用
TagBuilder myTag = // ...
string tagAsText = myTag.GetString();
这个解决方案对我有用!
StringBuilder result = new StringBuilder();
for (int i = 1; i <= pagingInfo.TotalPages; i++)
{
TagBuilder tag = new TagBuilder("a");
result.Append(GetString(tag));
}
return new HtmlString(result.ToString());
Net Core 中是否有原生的方法将 Tagbuilder 转换为 String?这仅适用于 ASP Net 5。
将 TagBuilder 的值转换为字符串
我认为微软在 Net Core 中对此有替代功能
public static string GetString(IHtmlContent content)
{
using (var writer = new System.IO.StringWriter())
{
content.WriteTo(writer, HtmlEncoder.Default);
return writer.ToString();
}
}
相同的 WriteTo
方法在 aspnetcore 中可用。
您应该能够继续受益于创建相同的 GetString 方法,因为 TagBuilder
继承自 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();
}
}
}
然后从你的代码中,你可以调用
TagBuilder myTag = // ...
string tagAsText = myTag.GetString();
这个解决方案对我有用!
StringBuilder result = new StringBuilder();
for (int i = 1; i <= pagingInfo.TotalPages; i++)
{
TagBuilder tag = new TagBuilder("a");
result.Append(GetString(tag));
}
return new HtmlString(result.ToString());