【发布时间】:2014-12-31 01:59:32
【问题描述】:
我在 C# 实体框架中设置了主从模型关系。一个主记录可能有多个详细记录。我希望带回所有主记录,但只带回每个主记录的第一个关联的详细记录。
例如 大师:id=5
详细信息:Id=1; EventMasterId=5;
详细信息:Id=2; EventMasterId=5;
详细信息:Id=3; EventMasterId=5;
当“Master Id 5”返回时,我只想要第一个关联记录“Detail Id 1”。我不想要其他细节。
我可以在原始 SQL 中执行此操作,但不知道如何将其转换为 LINQ:
SELECT * FROM EventMasters
JOIN EventDetails
ON EventDetails.Id =
(SELECT TOP 1 Id
FROM EventDetails
WHERE EventMasterId=EventMasters.Id
ORDER BY StartDate)
EventDetails 中的“Select Top 1”让我特别兴奋。
请问有人知道如何将此 SQL 语句转换为 LINQ 吗?
谢谢
【问题讨论】:
标签: c# linq entity-framework