0

(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 テーブルに値が入力されません。

私は何が欠けていますか?

4

1 に答える 1

0

残念ながら、CourseCollection を Student クラスに追加できませんでした

于 2013-09-12T18:33:49.623 に答える