在ASP.NET Core中,有两种可用的HTML编码器:HtmlEncoder和WebUtility.HtmlEncode。HtmlEncoder是更多的.NET Standard 2.0支持。因此,如果您的ASP.NET Core应用程序目标.NET Standard 2.0,您应该使用HtmlEncoder而不是WebUtility.HtmlEncode。
以下是使用HtmlEncoder进行HTML编码的代码示例:
@using System.Text.Encodings.Web;
@inject HtmlEncoder HtmlEncoder
@HtmlEncoder.Encode("Title
")
以上示例中,HtmlEncoder注入到视图中,然后在
以下是使用WebUtility.HtmlEncode进行HTML编码的代码示例:
@WebUtility.HtmlEncode("Title
")
注意,使用WebUtility.HtmlEncode编码时输出的结果应该是相同的。在这个例子中,使用HtmlEncoder的优点是我们可以控制编码器的行为,例如:应用程序是否应该跳过某些字符。