【发布时间】:2013-06-03 09:00:33
【问题描述】:
我需要知道满足某个条件的元素的数量,因此我执行以下操作:
int numberOfItems = context.SomeEntity.Count(someCondition);
但由于我只需要检查 numberOfItems 是否且仅当 numberOfItems 恰好为 1,因此我想改进此查询并通过在前两次出现满足条件时停止计数项目来提高效率(遇到前 2 次出现时)满足条件的,无需继续检查)。执行类似的操作:
bool existsOnlyOne = context.SomeEntity....
如何做到这一点?
【问题讨论】:
-
根据经验,Single() 方法是实现这一目标的最快方法之一,但这会涉及异常驱动的开发(这会很糟糕)。你可以破解 Single() 的代码,看看你发现了什么。
标签: performance linq entity-framework-4