0

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

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

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

4

1 回答 1

4

您说的是“姓名以 X 开头.. 或所有联系方式都以 X 开头”。您想要“姓名以 X 开头 .. 或任何联系方式以 X 开头”:

Func<BAL.Contact, bool> expr_contact =
        x => x.Name.NullSafeStartWith(txtSearch.Text)
      || x.ContactDetails.Any(a => a.TP.StartsWith(txtSearch.Text));
//                        ^^^ Any
于 2013-12-04T03:26:53.017 回答