小编Mat*_*ttE的帖子

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

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

计划、ID、名字、姓氏、DateFrom、DateTo、MemDateOfBirth

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

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

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

在此先感谢您的帮助!

c# linq asp.net filtering

3
推荐指数
2
解决办法
9951
查看次数

SQL查询仅根据流体条件返回一行

我知道这是可能的,但我不确定如何设置它.基本上我需要为每个员工提取数据,但前提是它满足基于几个不同日期的某些标准.

例如,如果员工在6/1之前被分配到公司,则会自动计算.

如果员工在6/1之后被分配到公司,那么只有在他们被分配之后才能对该公司进行审核(即,他们在6月25日被分配并在7/1进行审核时),他们才会被计算在内. .这应该被计算在内.例如,如果他们在6月25日被分配并且审查发生在6月15日,那么他们将不计入这名员工)

如果员工在4/1之前被从公司中移除,他们就不会被计算在内.如果它们在4/1或之后被移除则重要.

因此,关键列是员工 - 客户表中的审核创建日期,开始日期和结束日期.

我认为这需要某种类型的子查询,它返回该客户的员工的开始日期,然后根据评估此日期的Case语句与审核日期比较审核日期,但我不确定如何执行此操作.

任何帮助,将不胜感激.

编辑:表结构/数据如下:

员工 - 客户表

ID    EmpID   CustID  StartDate   EndDate
1       4       10    10/1/2017   2/21/2018
2       4       11    10/1/2017   7/31/2018
3       4       15    10/1/2017   4/8/2018
4       4       17    6/1/2018    NULL (means still active with this employee)
5       4       19    5/18/2018   NULL
Run Code Online (Sandbox Code Playgroud)

客户数据表

ID    CustID   ActivityDate   Task
1       10       1/13/2018    Review
3       15       4/2/2018     Review
4       17       6/25/2018    Review
5       17       6/13/2018    Client Engagement
6       17       6/29/2018    Client Engagement
7       19       5/25/2018 …
Run Code Online (Sandbox Code Playgroud)

sql-server subquery

3
推荐指数
1
解决办法
323
查看次数

如何使用Linq从匿名IEnumerable集合中选择项目

我有2个IEnumerable集合,其中包含一个字符和字符的计数(即s1 {Key ='a'Count ='5'}和s2 {Key ='a'Count ='4'})

我想用Linq查询执行以下操作:

如果该项目在两个集合中,我只希望来自集合的项目具有更高的计数,即来自s1的Count = 5

如果该项只在一个集合中,那么我们使用该项(不能使用Distinct,因为它说IEnumerable Anonymous不包含Distinct)

如果这些物品都在两个集合中,但它们的数量相等,那么我们使用哪一个并不重要.

无法想象这一部分,我很确定一旦我看到解决方案,我想要把我的头撞到墙上......

c# linq collections ienumerable

1
推荐指数
1
解决办法
319
查看次数

标签 统计

c# ×2

linq ×2

asp.net ×1

collections ×1

filtering ×1

ienumerable ×1

sql-server ×1

subquery ×1