我正在为我的客户搜索功能构建搜索查询: 我将所有这些字段传递给函数,并想知道构建LINQ表达式的最佳方法是什么。某些字段可能是空字符串,搜索应使用“包含”而不是搜索确切的字段字符串
public List<Customer> SearchCustomer(
string membershipID,
string preferName,
string firstName,
string lastName,
string nric,
string phoneNumber,
string email,
DateTime dob,
string gender,
string address,
Boolean vip,
bool isDeleted)
答案 0 :(得分:2)
您可以通过以下方式管理多个过滤器参数:
var result = customerCollection.
.Where(c => membershipID != null ? c.membershipId.Contains(membershipID) : true)
.Where(c => preferName != null ? c.preferName.Contains(membershipID) : true)
...
.ToList();
我希望你明白这个想法