【问题标题】:Select value from grandchildren从孙辈中选择价值
【发布时间】:2012-08-12 20:33:40
【问题描述】:

我的表结构如下:

我要选择:

  • 所有表 A 条目 + 表 C 中的标识符列具有:
    • TableBType 中的特殊值(“TableBTypeValue”)
    • TableCType 中的特殊值(“TableCTypeValue”)

我遇到的问题是,当有没有 TableB 条目的 TableA 条目或没有 TableC 的 TableB 条目时,linq 查询似乎失败(TableBType 和 TableCType 是强制性的,所以他们没有那个问题) .

使用 SQL 这不是什么大问题,但由于我是 linq 新手,所以我找不到创建此查询的正确方法。

【问题讨论】:

  • 您能否发布您现有的 linq 声明?

标签: linq entity-framework


【解决方案1】:

我想这就是你要找的:

from c in db.TableC
where c.TableCType == TableCTypeValue
join b in db.TableB on c.TableBId equals b.Id
where b.TableBType == TableBTypeValue
join a in db.TableA on b.TableAId equals a.Id
select new { a, c.Identifier };

希望对你有帮助。

【讨论】:

  • 谢谢,似乎很完美。不知何故,我试图从 TableA 开始,这使它变得更加复杂。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-12-12
  • 2014-10-08
  • 1970-01-01
  • 2018-05-30
  • 1970-01-01
  • 1970-01-01
  • 2013-10-25
相关资源
最近更新 更多