我有以下代码,如果它存在于数组"arrayID"中,它将返回一个值.
string str = arrayID.Single(s => s == ((System.Data.DataRowView)(e.Item.DataItem)).Row["ID"].ToString());
Run Code Online (Sandbox Code Playgroud)
我现在面临的问题是,当值不存在时,我得到了错误
Sequence不包含匹配元素
我希望返回一个空字符串,因为arrayID中不存在该值.
请告诉我如何在linq中完成此操作.
提前致谢.
这个SingleOrDefault方法就是你所追求的.如果没有项目,它将返回默认值(null),因此您只需要另一个步骤将其转换为空:
string str = arrayID
.SingleOrDefault(s => s == ((System.Data.DataRowView)(e.Item.DataItem)).Row["ID"].ToString())
?? string.Empty
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
392 次 |
| 最近记录: |