来自两个表

时间:2016-12-30 10:50:01

标签: entity-framework-core

我正在尝试为两个表创建导航属性。

这是代码。

    public class CourseMaster
{
    public int Id { get; set; }
    public string Name { get; set; }

    public int? TeamLeaderId { get; set; }
    [ForeignKey("TeamLeaderId")]
    public StudentMaster TeamLeader { get; set; }

    public int? GroupLeaderId { get; set; }
    [ForeignKey("GroupLeaderId")]
    public StudentMaster GroupLeader { get; set; }

    public virtual ICollection<StudentMaster> Students { get; set; }
}

public class StudentMaster
{
    public int id { get; set; }
    public string Name { get; set; }

    public int FirstSemCourseId { get; set; }
    [ForeignKey("FirstSemCourseId")]
    public CourseMaster FirstSemCourse { get; set; }

    public int SecondSemCourseId { get; set; }
    [ForeignKey("SecondSemCourseId")]
    public CourseMaster SecondSemCourse { get; set; }

    public int ThirdSemCourseId { get; set; }
    [ForeignKey("ThirdSemCourseId")]
    public CourseMaster ThirdSemCourse { get; set; }


    public int CourseMasterId { get; set; }
    public CourseMaster Course { get; set; }

}

// Fluent API

        modelBuilder.Entity<StudentMaster>()
             .HasOne(p => p.Course)
             .WithMany(b => b.Students)
             .HasForeignKey(p => p.CourseMasterId);

但是当我创建迁移时,我遇到了错误。

无法确定导航属性&#39; CourseMaster.TeamLeader&#39;所代表的关系。属于&#39; StudentMaster&#39;。手动配置关系,或从模型中忽略此属性。

我所遵循的程序是正确的,还是应该创建中间类。

或者我该如何创建课程。

感谢任何帮助。

由于

0 个答案:

没有答案