(1)Student と (2) Course の 2 つのテーブルがあり、(3)StudentCourse という結合テーブルもあります。関連データ:
public class Student
{
private ICollection<Course> _courses
public int Id {get;set;}
public Student(){
_courses = new Collection<Course>();
}
public ICollection<Course> Courses{
get {return _courses;}
set { _courses = value;}
}
}
public class Course
{
private ICollection<Student> _students
public int Id {get;set;}
public Course(){
_students = new Collection<Student>();
}
public ICollection<Student> Students{
get {return _students;}
set { _students = value;}
}
}
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
modelBuilder.Entity<Course>()
.HasMany<Student>(r => r.Students)
.WithMany(u => u.Courses)
.Map(m =>
{
m.ToTable("StudentCourse");
m.MapLeftKey("CourseId");
m.MapRightKey("StudentId");
});
}
私のコンテキストコンストラクターには次のものがあります:Configuration.LazyLoadingEnabled = false;
移行によって Course テーブルと Student テーブルをシードすると、StudentCourse テーブルに値が入力されません。
私は何が欠けていますか?