gpt4 book ai didi

c# - 具有多个可选参数的 LINQ 过滤器查询

转载 作者:行者123 更新时间:2023-12-03 23:14:29 24 4
gpt4 key购买 nike

我需要针对包含多个可选参数的返回列表编写 LINQ 查询。将有以下变量:

计划,
ID,
名,
姓,
日期从,
日期到,
出生日期

我想使用这些参数通过 LINQ 返回一个过滤列表,但它们都是可选的。当用户点击搜索按钮时,至少会提供一个,但这将由用户决定他们想要搜索的内容。如果他们提供超过 1 个,我需要按他们提供的所有方法进行过滤...

因此,例如,如果他们提供名字和起止日期,我想通过起止日期之间的名字返回一个人的所有实例的过滤列表,等等......

使用 LINQ 完成此任务的最简单方法是什么?这些变量是可选参数,因此可以提供其中的任何一个或全部。我知道我可以返回主列表,然后多次过滤它以获得结果,但我想知道是否有一种更快、更简单的方法来通过 LINQ 来完成它......

在此先感谢您的帮助!

最佳答案

我发现这是解决此类问题的最简单方法

var q = from mt in myTable
where (mt.FIrstname == FirstNameparam || FirstNameparam == null)
&& (mt.lastname == lastnameParam || lastnameParam == null)
&& (mt.DateField == DateParam || DateParam == null)
select new
{
mt.FIrstname,
mt.lastname,
mt.DateField
};

关于c# - 具有多个可选参数的 LINQ 过滤器查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41251331/

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