我有一个linq查询:
var query = from ct in ClaimTypes
join c in Claims.OrderBy(x => x.ClaimValue)
.Include("SubClaims") on ct.ClaimTypeId equals c.ClaimTypeId into t
select new { ct.ClaimTypeName, t };
结果是声明字典,其中键是声明类型,值是该声明类型下的声明列表。在声明中,有一个名为从属链接的列。但是,由于服务器问题,我们关闭了延迟加载,现在不会填充子索引列。在JOIN中使用INCLUDE不会填充列。任何人都可以建议任何其他解决方案吗?
答案 0 :(得分:1)
您没有在结果集中返回t.SubClaims。包含适用于子查询,而不是最终选择。运行SQL事件探查器以确认最终选择集不包含SubClaims字段。
尝试:
select new { ct.ClaimTypeName, t, t.SubClaims };
或者:
var query = /* you're query */;
query = query.Include(a => a.t.SubClaims);