<分区>
我目前正在检查我将要维护的一些代码。
我见过几次
.Take(1).SingleOrDefault()
为什么要用它而不是简单地使用它
.First() or .FirstOrDefault()
(我不确定如果结果集为空,.Take(1) 是否会抛出异常,恕我直言,这两个 .First... 方法之间会有区别吗?)
<分区>
我目前正在检查我将要维护的一些代码。
我见过几次
.Take(1).SingleOrDefault()
为什么要用它而不是简单地使用它
.First() or .FirstOrDefault()
(我不确定如果结果集为空,.Take(1) 是否会抛出异常,恕我直言,这两个 .First... 方法之间会有区别吗?)
最佳答案
我们不可能确切地知道您可能使用的任何 LINQ 提供程序的内部实现。他们的做法各不相同。在这种情况下,有些可能性能更高,而另一些可能性能较低。无论哪种方式,您都应该得到相同的结果。
在这种情况下,我们不可能读懂某人的想法来确定他们为什么会这样做。
话虽如此,如果您想深入挖掘并且它是一个 SQL 提供程序,您可以查看它生成的 SQL 并比较两种情况。
关于c# - LINQ:为什么要使用 ...Take(1).SingleOrDefault()?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51380818/