我首先使用实体框架数据库来构建我的数据库模型。到目前为止,我一直在处理单个表/实体,并且通过查询获取数据并将其保存在列表中以呈现数据已经非常顺利。
现在我处于需要加入几张桌子并发现自己有点挣扎的情况。我认为我可以简单地加入我需要的实体,因为它们彼此有一个外键,但是我很难找到一个返回我想要的集合的查询,它基本上是所有表中的所有列。
在 t-sql 中,我只需在键上的不同表上执行 LEFT JOIN。我考虑过创建一个视图,然后在此视图上构建模型,但我还必须能够更新数据,并且据我所知,数据库中的视图并不是那么直接地用 EF 进行更新。
我希望做类似下面的查询,但由于我还需要更新不同的表,所以我想知道是否有人有一个优雅的解决方案来解决这个问题。还是我根本不了解加入 EF 的一些事情?
using(var _ctx = new EFEntities())
{
var queryResult = from a in _ctx.a
join b in _ctx.b
on a.b_ID equals b.ID
join c in _ctx.c
on b.c_IDequals c.ID
select new
{
//columns I want
};
}