为什么这个linq查询没有给我预期的结果



下面的查询没有给出预期的结果。我所期望的是,如果任何条件都匹配,我需要所有联系人,但它不会给我的结果

 Func<BAL.Contact, bool> expr_contact =
            x => x.Name.NullSafeStartWith(txtSearch.Text)
          || x.ContactDetails.All(a => a.TP.StartsWith(txtSearch.Text));

我搜索了联系人姓名,但如果搜索文本与联系人详细信息不匹配,则会得到一个空结果:(

您说的是"姓名以X开头。或者ALL联系人详细信息以X开头"。您想要"姓名以X开头。或ANY联系方式以X开头":

Func<BAL.Contact, bool> expr_contact =
        x => x.Name.NullSafeStartWith(txtSearch.Text)
      || x.ContactDetails.Any(a => a.TP.StartsWith(txtSearch.Text));
//                        ^^^ Any

相关内容

  • 没有找到相关文章

最新更新