执行以下查询的最佳方式是什么?
我有两个具有以下结构的表:
我想找到所有“无主”资产——这意味着没有 AssetOwner 记录具有 AssetID 并且将来没有 EndDate 或 EndDate。
我在这个查询中做了第一遍:
return from a in db.Assets
where !db.AssetOwners.Any(o => o.AssetID == a.ID
&& (!o.EndDate.HasValue || o.EndDate > DateTime.Now))
select a;
但鉴于我缺乏这方面的经验,我想知道这是否是执行此查询的最佳方式(我什至不知道选项是什么)。
干杯,
蒂姆。