在我的特定情况下,我正在从旧版应用程序导入数据。在新应用程序中,我具有旧应用程序中不存在的模型属性(GradYear
)。我需要出于历史目的将数据从旧数据库导入到新数据库。但是,在新应用程序中,GradYear
是required
。
使用EF Core和Razor页面,是否有办法使GradYear
在呈现的输入文本框级别是必需的,但在数据库架构中是可选的?
答案 0 :(得分:2)
我可以考虑以下可能的解决方案:
另一种方法(未经测试)是根据需要装饰您的属性,但是像这样覆盖OnModelCreating:
public class YourAppContext : DbContext
{
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
...
modelBuilder.Entity<YourDbContextEntity>.Property(p => p.GradYear).IsOptional();
...
}
}