gpt4 book ai didi

c# - 用于过滤的动态 Lambda 表达式

转载 作者:太空宇宙 更新时间:2023-11-03 18:40:05 24 4
gpt4 key购买 nike

我在一个网页上有3个过滤条件

  1. 按下拉源过滤
  2. 按下拉类别过滤
  3. 在 StartDate 文本框和 EndDate 文本框之间过滤

我目前正在从表中取回所有行并将它们放入数据集中。我现在希望能够根据用户可能输入的上述过滤器的任意组合来过滤该数据集。或者用户可能选择不输入过滤器。

有人可以帮助我使用 lambda 表达式进行设置吗?

最佳答案

这是我在自己的代码中用于应用过滤器的模式:

var data = GetData();

var sourceFilter = SourceDropDown.Value;
if (!string.IsNullOrEmpty(sourceFilter))
data = data.Where(d => d.Source == sourceFilter);

var categoryFilter = CategoryDropDown.Value;
if (!string.IsNullOrEmpty(categoryFilter))
data = data.Where(d => d.Category == categoryFilter);

DateTime startDateFilter, endDateFilter;
if (DateTime.TryParse(TxtStartDate.Text, out startDateFilter) &&
DateTime.TryParse(TxtEndDate.Text, out endDateFilter))
data = data.Where(d => d.DT >= startDateFilter && d.DT <= endDateFilter);

return data.ToList();

关于c# - 用于过滤的动态 Lambda 表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9892690/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com