2

我对 Entity Framework 有点陌生,需要一些关于语法的建议。我的目标是从一个表中检索一个不同的过滤设备列表,并将它们与另一个表中的 ID 匹配。

这是完成 JOIN 的 RAW SQL。

SELECT DISTINCT DowntimeReasons.Equipment, Equipment.ID
FROM DowntimeReasons INNER JOIN 设备
ON DowntimeReasons.Equipment = Equipment.Equipment
WHERE DowntimeReasons.Emergency = 1

我已经能够使用以下代码将 SQL 中的不同设备列表重新创建为实体。

            var distinctEquipmentList = db.DowntimeReasons
                .Where(x => x.Emergency == true)
                .Distinct()
                .Select(x => x.Equipment)
                .ToList();

但是如何将此列表加入到我需要的其他表中的 ID 中?我愿意查询语法或方法语法。哎呀,当我独自学习时,我愿意接受任何帮助!谢谢!

4

1 回答 1

2

在不查看您的实体的外观的情况下,这是一个镜头。

你可以尝试这样的事情:

var query = (from dr in db.DowntimeReasons
            join e in db.Equipments on dr.Equipment equals e.Equipment
            where e.Emergency
            select e.Equipment).Distinct().ToList();

如果这不起作用,请发布您的实体。

希望这可以帮助。

于 2013-04-15T21:10:20.340 回答