我无法为任何属性更新任何属性名称或DataAnnotations。
这里是代码
班级:
public class Student
{
public Student()
{
}
[Key]
public int StudentID { get; set; }
public string StudentName { get; set; }
public DateTime? DateOfBirth { get; set; }
public byte[] Photo { get; set; }
public decimal Height { get; set; }
public float Weight { get; set; }
public Standard Standard { get; set; }
}
上下文
public class SchoolContext : DbContext
{
public SchoolContext()
: base("name=SchoolDBConnectionString")
{
}
public DbSet<Student> Students { get; set; }
public DbSet<Standard> Standards { get; set; }
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
base.OnModelCreating(modelBuilder);
}
}
现在我想将StudentName更新为必填字段
我正在尝试下面的代码 更新课程 - &gt;学生
[Required]
public string StudentName { get; set; }
和Context Class(OnModelCreating)
modelBuilder.Entity<Student>().HasRequired(p => p.StudentName);
当我运行此程序时,我收到错误:
EntityFramework.dll中出现未处理的“System.InvalidOperationException”类型异常 附加信息:自创建数据库以来,支持“SchoolContext”上下文的模型已更改。请考虑使用Code First Migrations来更新数据库。
如果我删除数据库并运行此程序,那么工作正常。但我不希望删除属性更改数据库。
您能否提供信息?如何更新模型属性?