使用 EF 关系表的存储库模式实现
Repository Pattern implementation WITH EF relational tables
我有4张桌子
Student
、Result
、ResultDetail
和 Queue
Result
和 ResultDetails
与 ResultID
作为外键相关。
Student
和 Result
与 StudentID
关联为 ForeignKey
Student
可以有 'N' 个结果,但只有一个有效 Result
。
Queue
和 Student
与 StudentID
相关。
现在使用 Entity Framework 和存储库模式,
我想要
执行 ->
Queue q join Student s on q.StudentID = s.StudentID
join Result r on q.StudentId = r.StudentID
Join ResultDetail rd on t.ResultID = rd.ResultId where r.IsActive = 1
有人可以帮助使用存储库模式实现这一目标吗?
即使我们在表之间有关系,我们是否需要创建 4 个存储库。
性能也是一个标准。
提前致谢。
Could some one please help in achieving this with Repository Pattern?
是的。创建 DbContext 的自定义子类型以用作您的存储库。为每个实体类型添加一个 DbSet 属性。还将导航属性放在您的实体上,这样您的查询就不必在 LINQ 中使用 join
。
我有4张桌子
Student
、Result
、ResultDetail
和 Queue
Result
和 ResultDetails
与 ResultID
作为外键相关。
Student
和 Result
与 StudentID
关联为 ForeignKey
Student
可以有 'N' 个结果,但只有一个有效 Result
。
Queue
和 Student
与 StudentID
相关。
现在使用 Entity Framework 和存储库模式, 我想要 执行 ->
Queue q join Student s on q.StudentID = s.StudentID
join Result r on q.StudentId = r.StudentID
Join ResultDetail rd on t.ResultID = rd.ResultId where r.IsActive = 1
有人可以帮助使用存储库模式实现这一目标吗? 即使我们在表之间有关系,我们是否需要创建 4 个存储库。 性能也是一个标准。
提前致谢。
Could some one please help in achieving this with Repository Pattern?
是的。创建 DbContext 的自定义子类型以用作您的存储库。为每个实体类型添加一个 DbSet 属性。还将导航属性放在您的实体上,这样您的查询就不必在 LINQ 中使用 join
。