获取表之间没有关系的相关数据

时间:2018-07-06 05:53:00

标签: entity-framework-core entity-framework-core-2.1

当我有两个具有一对多关系的模型时,它们看起来像下面的模型:

public class Student
{
    [Key]
    [DatabaseGeneratedAttribute(DatabaseGeneratedOption.Identity)]
    public int StudentID { get; set; }

    public string Name { get; set; }

    public int ClassID { get; set; }
    [ForeignKey("ClassID")]
    public virtual Class Class { get; set; }
}

public class Class
{
    [Key]
    [DatabaseGeneratedAttribute(DatabaseGeneratedOption.Identity)]
    public int ClassID { get; set; }

    public string Name { get; set; }

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

这意味着我可以使用include方法来获取相关数据。现在,我正在处理一个有600多个表的项目。对于这些表,没有关系,我无法在表之间创建关系。有没有办法以某种方式链接模型,以便能够获取相关数据?

1 个答案:

答案 0 :(得分:0)

是的,您可以在模型类中连接没有关系的表。

例如,假设您在两个表TeacherIdStudent中都有Class

您可以按如下所示基于TeacherId联接两个表

DbContext.Students
.Join(DbContext.Classes,student=>student.TeacherId,class=>class.TeacherId, (std,tchr)=> new {std,tchr});