【发布时间】:2012-08-15 12:22:27
【问题描述】:
我开始掌握 LINQ,但我一直停留在将查找表实现到对象中然后查询该对象(或它的关联)的基本概念和技术上。这可能是一个愚蠢的问题,并且可能有一个我应该自己解决的答案。但我还没有找到一个解释,使这个方法坚持下去。
所以我创建了一个这样的示例数据库结构
我想要两个 LINQ 查询,第一个提供所有 example2 记录,这些记录通过查找指定的 object1 和第二个提供我所有与指定 object2
相关的 example1 记录希望有人可以启动我的大脑。
类似
var examples = (from e in db.examples where e.example2.id == id).ToList();
快速编写的 SQL 查询
SELECT * FROM [dbo].[example1] one
JOIN [dbo].[examplelookup] lu ON one.[id] = lu.[example1id]
JOIN [dbo].[example2] two ON lu.[example2id] = two.[id]
WHERE one.[id] = 1
刚刚结束并创建了这个,我认为应该解释一下
【问题讨论】:
-
首先,没有愚蠢的问题。其次,请提供一些代码:)
-
example2 和 example1 是否共享相同的键值?
-
为什么不从如何向数据库中的数据提出问题开始——忽略 LINQ,只考虑 SQL 语言,然后从那里开始工作。