Linq 失败而不是返回 null?

标签 linq

我正在尝试使用 .Where 方法过滤项目列表,并返回与过滤器匹配的第一个项目。

但是,如果没有与过滤器匹配的项目,它不会返回 null,而是抛出异常。

这是我正在使用的代码行:

DescendantNodes.Where(dNode => dNode.InnerText.Contains("rain")).First();

除了拆分为两条指令之外,是否有其他方法可以使这项工作正常进行?

谢谢,

泰迪熊

最佳答案

你也可以这样压缩你的语句:

DescendantNodes.FirstOrDefault(dNode => dNode.InnerText.Contains("rain"));

关于Linq 失败而不是返回 null?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1991762/

相关文章:

c# - LINQ 总和溢出异常?

c# - 如何在 A 列或 B 列上加入 Linq 查询

asp.net - Linq to 实体多个 WHERE 子句 &&

c# - 在方法中传递 Linq 实体的属性以设置和获取结果

c# - 两个值之间的距离

c# - 我如何通过 linq 到 xml 从 xml 获取所有 "properties"

c# - LINQ 中的动态查询

c# - 一次查询多个列表

c# - 如何将 SQL 转录为 LINQ

c# - SQL Server Compact 与 C# 数据结构的比较