【发布时间】:2011-08-02 19:27:18
【问题描述】:
使用 LINQ,如何进行选择并只返回第一个关联的子项?
我有:
[table: Report]
GeneratedDate
PerformanceMetric 1 -----> N [table PerformanceMetric]
Bios Timestamp
... X
Y
..... (there is a good dozen other fields)
目前,我这样做:
Report = _ctx.Reports.SingleorDefault(rpt => rpt.bios == mySerial);
这将返回与所有 PerformanceMetric 相关联的报告。我只想返回第一次出现的 PerformanceMetric。
LINQ 是否提供了这样做的内置方式?
编辑:事实上,我正在寻找报告,但 PerformanceMetric 应该只包含第一个元素。 (Report.PerformanceMetrics.Count
【问题讨论】:
-
所以你一直都有正确的实现?还是您想要报告但
PerformanceMetric应该只包含第一个元素? -
是 Report.PerformanceMetrics 仅包含 1 或 0 个元素的报告。数据库中的报告可能有 1000 条 PerformanceMetric 记录...
-
好的,让我直截了当,您想要报告,但您想要修改报告以使 PerformanceMetric 仅包含 0/1 元素?
-
看看我下面的内容,看看它是否更适合您的需求。
-
正如他们在下面写的,你应该单独拿出PerformanceMetric。
标签: c# linq linq-to-sql