protected override void OnModelCreating(ModelBuilder modelBuilder)
{
modelBuilder.Entity<Student>().Property(s=>s.firstName).HasMaxLength(6).IsFixedLength().IsRequired();
modelBuilder.Entity<Student>().Property(s => s.zip).HasMaxLength(4).IsRequired();
modelBuilder.Entity<Student>().Property(s => s.firstName).IsRequired();
//modelBuilder.Entity<Student>().Property(s => s.lastName).IsRequired().HasMaxLength(8);
modelBuilder.Entity<Student>().Property(s => s.mobileNumber).HasMaxLength(10).IsFixedLength();
}
我试图在手机号码和zip核心上添加固定长度验证,但它不起作用。它适用于名字和姓氏,但不适用于整型和长型。有什么方法可以验证这些字段吗。
//student class
public class Student
{
public int id { get; set; }
public string firstName { get; set; }
public string lastName { get; set; }
public long mobileNumber { get; set; }
public DateTime DOB { get; set; }
public string streetName { get; set; }
public string city { get; set; }
public string state { get; set; }
public int zip { get; set; }
}
可以通过HasPrecision
方法配置数值。
Property(e => e.zip)
.HasPrecision(4, 0);
4
是冒号前面的值,0
是冒号后面的所有值。
但您可能需要将"zip"更改为字符串。某些邮政编码包含字符或具有前导零。