我正在尝试使用 .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/