0
我在实体框架中发现“包含”的问题。让我们假设我有两个外键关系的表。未收到包含对象的数据 - 实体框架
var result = (from u in entity.Table1.Include("Table2")
join o in entity.Table2 on u.Column1 equals o.Column1
where u.Column2 == “abc” && u.Column3 == ‘xyz’
&& o.Column5 == organizationCode
select u).FirstOrDefault();
对于上述查询,即使我在数据库中有适当的数据,它也不会返回结果中的Table2对象数据。
我发现上述查询的问题是,如果查询有“包括”以及“加入”,EF不考虑“包含”表。这是我的假设。
花了一些时间后,我通过在下面写了一个虚拟查询来获得数据。请参阅下面的两个查询。
var result = (from u in entity.Table1.Include("Table2")
join o in entity.Table2 on u.Column1 equals o.Column1
where u.Column2 == “abc” && u.Column3 == ‘xyz’
&& o.Column5 == organizationCode
select u).FirstOrDefault();
var resultOrg = (from o in entity. Table2
where o.Column5 == organizationCode
select o).FirstOrDefault();
执行这两个查询后,我在结果变量中获取Include(Table2)数据。在这种情况下,我正在执行一个我想避免的查询。
请建议我在哪里做错了。