EF7连接表中的重复条目,用于多对多关系

时间:2017-01-10 04:13:18

标签: asp.net-core entity-framework-core

我正在关注核心的ef-mvc教程(https://docs.microsoft.com/en-us/aspnet/core/data/ef-mvc/complex-data-model),我有两个模型,彼此之间有多对多的关系,这意味着我必须有一个 - 这两个类和一个专门用于连接表的类之间定义了多少关系,对吧?即。

public class JoinTable    
{
  public int model1ID;
  public model1 model1;    
  public int model2ID;
  public model2 model2;
}

在示例DbInitializer种子方法中,此代码:

foreach(Enrollment e in enrollments)
{
       var enrollmentInDataBase = context.Enrollments.Where(
        s =>
            s.Student.ID == e.StudentID &&
              s.Course.CourseID == e.CourseID).SingleOrDefault();
       if (enrollmentInDataBase == null)
       {
            context.Enrollments.Add(e);
       }
}

基本上保存种子方法中定义的表中尚不存在的所有实体。我怎么能写一个方法将实体保存到数据库达x次(我自己的应用程序需要这个功能)?同样基于我的知识,我确定数据模型(或表)定义中存在一个必须改变的隐式限制?

1 个答案:

答案 0 :(得分:1)

在评论中回答,但为了提高知名度而来到这里:

你想在DeckCard中拥有一个名为Count的第三个属性,每张卡只有一个条目,而且该数量将是该卡中有多少个。