我试图让我所有的maingroups及其相关实体。我还想过滤BuildingPartData集合而不影响任何其他实体。我几乎想尽办法想,但没有运气。EF 4过滤子集合
test.ContextOptions.LazyLoadingEnabled = false;
var buildingPartMainGroups = (from buildingPartMainGroup in test.BuildingPartMainGroup
from buildingPartSubGroup in buildingPartMainGroup.BuildingPartSubGroup
from buildingPart in buildingPartSubGroup.BuildingPart
from buildingPartData in buildingPart.BuildingPartData
where buildingPartData.StatusPendingApprove == true
//let buildingPartData = buildingPartMainGroup.BuildingPartSubGroup.Where(x => x.BuildingPart.Any(o => o.BuildingPartData.Any(y => y.StatusPendingApprove == true)))
select new
{
BuildingPartMainGroups = buildingPartMainGroup,
BuildingPartDatas = buildingPartData
}).ToList().Select(c => c.BuildingPartMainGroups);
foreach (var bb in buildingPartMainGroups)
{
foreach(var tt in bb.BuildingPartSubGroup)
{
foreach (var oo in tt.BuildingPart)
{
foreach (var ww in oo.BuildingPartData)
{
bool tes4t = ww.StatusPendingApprove;
}
}
}
}
这里是模型
http://mimo-design.com/model.png
广东话插入图片尚未..
var buildingPartMainGroups = test.BuildingPartMainGroup.Include("BuildingPartSubGroup.BuildingPart.BuildingPartData").
Where(bpmg => bpmg.BuildingPartSubGroup.
Any(o => o.BuildingPart.
Any(x => x.BuildingPartData.
Any(u => u.StatusPendingApprove == true))));
只过滤我BuildingPartMainGroup实体。我想有我所有的BuildingPartMainGroup实体,符合条件/过滤器上BuildingPartData
有关对象模型/实体模型的更多文档可能会更好。 –
新增型号:-) – mimo
这说明了很多。看到我的第二个答案! –