【发布时间】:2015-04-09 12:41:09
【问题描述】:
考虑以下类:
public class Customer
{
public int Id {get; set;}
public int GroupId {get; set;}
public int Number {get; set;}
public string Name {get; set;}
}
我在服务层中有一个方法:
public Customer Get(Expression<Func<Customer, bool>> where)
{
return customerRepository.Get(where);
}
调用代码是:
var customer = customerService.Get(x => x.Number == number);
在上述方法中,用户根据属性搜索客户(不包括GroupId,因为它隐藏在 ViewModel 中)。但是,用户总是被分配到一个组,因此,他只能在他的组内搜索客户。所以GroupId必须动态添加。
如何在上述方法中将GroupId 添加到where 表达式中。 GroupId 可能已在表达式中可用,也可能不可用。
【问题讨论】:
标签: c# linq lambda expression