我在我的 MVC 应用程序模型中使用类级别的自定义验证器。因此,在自定义验证器中,我根据条件生成错误消息并尝试返回 MVC 并将其分配给汇总列表,如下所示。型号名称在这里是“被保险人”
protected override ValidationResult IsValid(object value, ValidationContext validationContext)
{
string errorMessage = "";
//StringBuilder errorMessage1 = new StringBuilder();
var model = value as Insured;
if (model == null)
{
return new ValidationResult("No valid Session exists.");
}
else
{
if (model.Age > 19)
errorMessage += " <li> Age cannot be greater than 19. </li> " + Environment.NewLine;
}
return new ValidationResult(errorMessage);
}
依此类推,将所有文本添加到错误消息字符串中。但是当我在页面上显示它时,它会在一行中显示所有内容,而不是在下一行显示每个内容,因为我正在使用 Environment.NewLine。
我尝试使用<br/>
\n\r 等等,但所有内容都显示为文本而不是 html。
我也尝试使用字符串生成器。
显示:<li> Age cannot be greater than 19. </li><li> Another error. </li>
代替
编辑:当我通过从 firebug 编辑进入 HTML 并在生成的错误消息中留出一个空格时,一切都会完全对齐。这太奇怪了,不明白这个问题。