这个LINQ语句会返回null吗?
本文关键字:null 返回 LINQ 语句 这个 | 更新日期: 2023-09-27 18:09:44
给定以下c#代码:
List<string> source = new List<string>();
IEnumerable<string> values = from value in source select value;
将values
永远是空的还是它总是返回一个空序列?
是的,它可以返回null,如果你有一个扩展方法定义在你的代码像下面的地方:
public static IEnumerable<string> Select(this List<string> list, Func<string, string> action)
{
return null;
}
否则没有;它将返回一个空序列。
values
序列本身永远不会为空。如果source
为空,则values
将是一个不包含任何项的空序列。
(当然,序列中的一个或多个string
项可能为空。)
Linq返回空序列如果要测试序列是否为空,请使用.Any()
方法