验证文本在 ValidationSumary 或 ValidationFor 等之前编码...
你只需要你解码 html,然后创建一个 MvcHtmlString ...
例子:
@HttpUtility.HtmlDecode(Html.ValidationSummary().ToString()).ToMvcHtmlString()
这是我为制作 MvcHtmlString 所做的扩展:
namespace System
{
public static class StringExtension
{
public static System.Web.Mvc.MvcHtmlString ToMvcHtmlString(this string value)
{
return System.Web.Mvc.MvcHtmlString.Create(value);
}
}
}
或者,如果您打算重用它,您可以创建一个 HtmlHelper:
namespace System.Web.Mvc.Html
{
public static class FormHelper
{
public static MvcHtmlString ValidationSummaryEx(this HtmlHelper htmlHelper, bool excludePropertyErrors)
{
var original = htmlHelper.ValidationSummary(excludePropertyErrors);
var decoded = HttpUtility.HtmlDecode(original.ToString());
return decoded.ToMvcHtmlString();
}
}
}
希望它对您或未来的观众有所帮助。注意:它适用于所有验证 Summary 和 ValidationFor ...