这是我的模型,它在学习程序和学习模块之间建立了多对多关系。我不确定下一步的最佳做法是表格学习版本。这需要一对多连接到这个多对多学习程序分配。我是否需要在LearningProgrammeAssignment中创建一个ID?还是可以在LearningRelease中引用它?
public class MyContext : DbContext
{
public DbSet<LearningProgramme> LearningProgrammes { get; set; }
public DbSet<LearningModule> LearningModules { get; set; }
public DbSet<LearningProgrammeAssignment> LearningProgrammeAssignments { get; set; }
public DbSet<LearningRelease> LearningReleases { get; set; }
}
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
modelBuilder.Entity<LearningProgrammeAssignment>()
.HasKey(p => new { p.LearningModuleId, p.LearningProgrammeId });
}
public class LearningProgramme
{
public int LearningProgrammeId { get; set; }
public string LearningProgrammeTitle { get; set; }
public List<LearningProgrammeAssignment> LearningProgrammeAssignments { get; set; }
}
public class LearningModule
{
public int LearningModuleId { get; set; }
public string LearningModuleTitle { get; set; }
public List<LearningProgrammeAssignment> LearningProgrammeAssignments { get; set; }
}
public class LearningProgrammeAssignment
{
public int LearningProgrammeId { get; set; }
public int LearningModuleId { get; set; }
public LearningProgramme LearningProgramme { get; set; }
public LearningModule LearningModule { get; set; }
}
public class LearningRelease
{
public int LearningReleaseId { get; set; }
public int systemcode { get; set; }
public DateTime ReleaseDate { get; set; }
//add in the LearningProgrammeAssignment id
}