【问题标题】:Lambda multiple conditions to select objects from List<T>Lambda 多个条件从 List<T> 中选择对象
【发布时间】:2011-08-16 21:29:51
【问题描述】:

我正在使用 c# 来选择列表中的一些对象。以下代码正在运行。

public void filterByWork(string work, int precision)
        {
            workResults = new List<FbUser>();
            Array keywords = work.Split(' ');
            workResults = userlist.Where(user => user.work != null);
            workResults = workResults.Where((user => user.work.Any(wrk => StringExtensions.match(wrk.employer.name, keywords) >= precision)));

        }

但是如果我想要多个条件怎么办?我可以在某处使用“OR”关键字吗?因为我想选择 wrk.employer.name = "something" OR wrk.position.name = "something" 的所有对象。怎么能做到这一点?

提前致谢!

【问题讨论】:

    标签: c# list select lambda conditional


    【解决方案1】:

    您可以简单地使用普通的|| 运算符:

    workResults = workResults.Where((user => 
                      user.work.Any(wrk => wrk.employer.name == "something" || 
                                           wrk.position.name == "something")
                                   ));
    

    【讨论】:

      【解决方案2】:

      好吧,您可以只使用 C# 或运算符 (||)。

      【讨论】:

      • 太真实了。但是,由于这是如此(无论问题如何,实际上都提供帮助),所以我的投票是答案,该答案显示了这个示例
      猜你喜欢
      • 1970-01-01
      • 2011-02-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-11-13
      • 2020-10-22
      • 1970-01-01
      • 2021-11-12
      相关资源
      最近更新 更多