我有一个有4行的列表.我需要获得第3行的值.
var result = (from rs in list
select rs).Skip(2).First();
Run Code Online (Sandbox Code Playgroud)
我有没有理由想在这个场景中使用Take(1),因为我已经看过了.
var result = (from rs in list
select rs).Skip(2).Take(1);
Run Code Online (Sandbox Code Playgroud)
SLa*_*aks 18
Take(1)
返回IEnumerable<T>
包含一个对象.
First()
直接返回对象.
在问题的上下文中Take(1)
返回一个IEnumerable<T>
包含零个或一个元素的东西 - 所以它类似于FirstOrDefault()
(除了返回一个枚举).
那么回答你的问题:不.使用First()
或者FirstOrDefault()
在这种情况下,取决于您对结果集中的内容的期望.