如何将验证消息组合在一起?

时间:2013-07-04 14:49:37

标签: c# asp.net-mvc validation

我在mvc中有这个模型,它有各种验证属性,所有这些都提供了错误信息

 public class Images
    {
        [Key]
        [DatabaseGenerated(DatabaseGeneratedOption.Identity)]
        public int ImageId { get; set; }
        [Required(ErrorMessage="Please enter your first name")]
        public string SubmitterFirstName { get; set; }
        [Required(ErrorMessage = "Please enter your surname name")]
        public string SubmitterLastName { get; set; }
        [ExistingFileName]
        public string NameOfImage { get; set; }
        [StringLength(140, ErrorMessage="Please reduce the length of your description to below 140 characters")]
        [DataType(DataType.MultilineText)]
        public string DescriptionOfImage { get; set; }
        public string ImagePath { get; set; }
        [DatabaseGenerated(DatabaseGeneratedOption.Identity)]
        public DateTime DateAdded { get; set; }
    }

这些错误消息中的每一个都显示在他们正在验证的(在这种情况下)文本框的一侧,是否有办法在一个视图中将它们全部组合在一起,并说<div>? 如:

<div id="errorMessages">
//Errors appear here
<div>

2 个答案:

答案 0 :(得分:3)

实际上非常简单。在表单元素中的视图中使用以下内容:

@Html.ValidationSummary(false, "Form validation was unsuccessful. Please correct the errors and try again.")

请注意,作为false传递的初始布尔参数是excludePropertyErrors参数,如果设置为false,这显然会包含validation summary中的各个属性错误。

答案 1 :(得分:2)

您可以使用ValidationSummary将所有错误消息放在一个地方

@Html.ValidationSummary(...)