gpt4 book ai didi

c# - 当元素不存在于使用 linq 的列表中时返回一个值

转载 作者:行者123 更新时间:2023-11-30 19:20:16 24 4
gpt4 key购买 nike

我有以下代码,如果它存在于数组“arrayID”中,它会返回一个值给我。

string str = arrayID.Single(s => s == ((System.Data.DataRowView)(e.Item.DataItem)).Row["ID"].ToString());

我现在面临的问题是当值不存在时我得到错误

Sequence contains no matching element

如果值不在 arrayID 中,我希望返回一个空字符串。

请告诉我如何在 linq 中完成此操作。

提前致谢。

最佳答案

SingleOrDefault 方法就是您所追求的。如果不存在任何项目,它将返回默认值 (null),因此您只需要执行另一个步骤将其转换为空:

string str = arrayID
.SingleOrDefault(s => s == ((System.Data.DataRowView)(e.Item.DataItem)).Row["ID"].ToString())
?? string.Empty

关于c# - 当元素不存在于使用 linq 的列表中时返回一个值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6894320/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com