gpt4 book ai didi

c# - LINQ select 查询总是产生真值

转载 作者:太空宇宙 更新时间:2023-11-03 17:09:42 25 4
gpt4 key购买 nike

当我点击以下行时,我总是收到一个 true,无论“本地”是否出现在加入的 Roles 表中。

if (objUserRoles.Select(x => (x.Role.Role1 == "local")).Count() > 0)

我的语法正确吗?

最佳答案

您正在寻找:

if (objUserRoles.Any(x => x.Role.Role1 == "local"))

您正在做的是选择一系列 bool。例如。如果您有 3 个项目,您的查询返回了 false, true, false,即您要求该 false, true, false 序列的表达式,而不仅仅是位于真实的位置。看起来您正在尝试选择该系列 bool 为真的值,这意味着您应该使用 Where 而不是 Select。但是,由于您真正对 WhereCount 所做的是检查至少一个,因此您应该执行 Any,它会执行此操作效率更高。

关于c# - LINQ select 查询总是产生真值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10536883/

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