我正在搜索,但根本无法获得结果(我可能使用了错误的关键字)。
我有这些多个简单的Linq表达式:
var items = ErrorList.Where(n => n.CompanyID == SelectedItem.CompanyID);
var items = ErrorList.Where(n => n.CompanyID == SelectedItem.CompanyID && n.TaxCode == SelectedItem.TaxCode);
等等(此linq语句中添加了更多条件)。
我希望能够指定一次我的函数并根据指定的条件检索项目,而不是当前的方法(使用多个if语句)。我之前没有这样做,但我相信它应该是这样的?
private System.Collections.IEnumerable Result(Func<>)
......我不知道如何继续
P.S。我不需要创建单独的IEnumerable,如果有一种方法如何提前指定你的功能? e.g。
switch (sCase)
{
case 1:
sResult = (n => n.CompanyID == SelectedItem.CompanyID);
break;
case 2:
sResult = (n => n.CompanyID == SelectedItem.CompanyID && n.TaxCode == SelectedItem.TaxCode);
break;
}
var items = ErrorList.Where(sResult);