范围(minmax)属性

指定属性的数字最小和最大范围

using System.ComponentModel.DataAnnotations;   

public partial class Enrollment
{
    public int EnrollmentID { get; set; }
   
    [Range(0, 4)]
    public Nullable<decimal> Grade { get; set; }
}

如果我们尝试插入/更新具有超出范围值的成绩,则此提交将失败。我们将得到一个我们需要处理的 DbUpdateConcurrencyException

using (var db = new ApplicationDbContext())
{
    db.Enrollments.Add(new Enrollment() { Grade = 1000 });

    try
    {
        db.SaveChanges();
    }
    catch (DbEntityValidationException ex)
    {
        // Validation failed for one or more entities
    }
}

它也可以与 asp.net-mvc 一起用作验证属性。

结果:

StackOverflow 文档