MVC 中的属性和 HasRequired 关键字是什么 asp.net?



我正在使用MVC的代码优先方法,但是生成数据库时使用的属性和haskey必需关键字是什么。

法典:

public class StudentDBContext : DbContext
{
public StudentDBContext() : base("StudentDBContext")
{
}
public DbSet<Student> students { get; set; }
public DbSet<Course> course { get; set; }
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
//course
modelBuilder.Entity<Course>().HasKey(p => p.CourseId); //Primary Key field in a database
modelBuilder.Entity<Course>().Property(c => c.CourseId).HasDatabaseGeneratedOption(DatabaseGeneratedOption.Identity);
//student
modelBuilder.Entity<Student>().HasKey(b => b.Id);   //Student Id
//what is property keyword?
modelBuilder.Entity<Student>().Property(b => b.Id).HasDatabaseGeneratedOption(DatabaseGeneratedOption.Identity);
//what is hasrequired keyword?
modelBuilder.Entity<Student>().HasRequired(p => p.course).WithMany(b => b.student).HasForeignKey(b => b.CourseId);
base.OnModelCreating(modelBuilder);
}
}

为什么它在MVC中使用属性并具有必需 asp.net 关键字含义?

有关详细信息,请参阅 EF6 文档。您也可以在那里阅读有关HasRequired和Property方法的信息。

属性用于引用属性,hasrequired用于对该属性强制执行所需的规则。 https://learn.microsoft.com/en-us/ef/ef6/modeling/code-first/fluent/relationships 请参阅此处。

相关内容

最新更新