为什么dataAnnotations不能使Stuent的CourseList属性有效?

时间:2018-06-02 00:58:03

标签: c# .net validation data-annotations componentmodel

当我使用数据System.ComponentModel.DataAnnotations时,我遇到了问题。我定义了一个包含2个属性的Student类;一个是Name属性,另一个是CourseList属性;当我使用Validator.TryValidateObject方法验证Sutent实例时,对CourseList没有任何影响。谁可以帮助我

using System;
using System.ComponentModel.DataAnnotations;
using System.Collections.Generic;
namespace C
{
    class Program
    {
        static void Main(string[] args)
        {
            var user = new Stuent();
            var context = new ValidationContext(user, null, null);
            var results = new List<ValidationResult>();
            Validator.TryValidateObject(user, context, results, true);
       }
}
public class Stuent
{
    [Required]
    public string Name { get; set; }

    public List<Course> CourseList { get; set; }

}
public class Course
{
    [Required]
    public string CourseName { get; set; }

}

}

Click on me by clicking on the mouse

1 个答案:

答案 0 :(得分:0)

您必须创建自定义验证属性才能验证您的CourseList属性。

我在上面的代码中做了一些更改,还创建了自定义验证属性。请检查this link

您可以运行并检查此代码,当您没有为CourseName属性赋值时,它将显示验证消息。