是否存在更严格的.Single()版本,如果从查询中返回多个异常,则抛出异常?我总是可以创建一个扩展方法,但想知道我是否正在重新发明已存在的东西。
答案 0 :(得分:13)
答案 1 :(得分:5)
答案 2 :(得分:3)
Single()
已经抛出了InvalidOperationException。
顺便说一句,这意味着它在后台运行足够的代码来尝试获取至少两个元素 - 因此如果成功就可以抛出,这意味着如果你知道只有First()
,那么First()
会更高效一个这样的项目,或不关心。在Single
是另一种可能性的情况下选择{{1}}介于唯一合理的方法和危险的优化之间,具体取决于具体情况。
答案 3 :(得分:2)