【发布时间】:2019-11-11 19:20:14
【问题描述】:
我有一个具有某些属性的实体PersonEntity
public class PersonEntity
{
[Required]
[MaxLength(50)]
public string FirstName { get; set; }
[Required]
[MaxLength(50)]
public string LastName { get; set; }
[Key]
public int Id{ get; set; }
}
当我执行update-database -verbose 时,会生成数据库和表,但不考虑属性。数据库中有FirstName 和LastName 的varchar(MAX),它可以为空。
我尝试使用 fluent API(我删除了属性)
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
modelBuilder.Entity<PersonEntity>()
.ToTable(nameof(this.Customer))
.HasKey(e => e.Id);
modelBuilder.Entity<PersonEntity>()
.Property(t => t.LastName)
.IsRequired()
.HasMaxLength(50);
modelBuilder.Entity<PersonEntity>()
.Property(t => t.FirstName)
.IsRequired()
.HasMaxLength(50);
base.OnModelCreating(modelBuilder);
}
但结果相同。
知道为什么吗?
谢谢,
【问题讨论】:
标签: c# .net entity-framework-core