gpt4 book ai didi

c# - 如何检查列表包含 Linq to sql 中的多个值

转载 作者:太空宇宙 更新时间:2023-11-03 16:43:21 25 4
gpt4 key购买 nike

在我的应用程序中,我遇到了查询问题。

我正在尝试运行具有多个条件值的查询。

IQueryable<DealsDetails> DD = (from D in DbContext.Deals
where lst.Contains(D.DealCategory)
select D);

我有这个查询,lst 将包含如下这些值:

lst.Add("Other");
lst.Add("Services");

D.DealCategory 包含这样的值。

Other,Beauty,Services
Beauty,Services,
Services
Other,
Beauty
Other,Services

我需要表中包含该列表的任何项目的所有行。表示包含其他和服务的所有行。

结果是

其他,美容,服务 美容、服务、 服务 其他 其他,服务

不包括美女行。

请建议我如何编写此查询。

第一次编辑

我需要 DealCategory 列包含列表中任何项目的所有行。

谢谢

最佳答案

连接两个列表,只返回第一个列表中的元素:

IQueryable<DealsDetails> DD = from D in DbContext.Deals
join C in lst
on D.DealCategory equals C
select D;

编辑: 正如@Muhammad 所说,这不会起作用,因为交易在 Db 中,而 lst 在内存中,但如果您可以过滤 lst,我会在那里修改答案直接在服务器上的项目:

IQueryable<DealsDetails> DD = from D in DbContext.Deals
join C in DbContext.DealCategories
on D.DealCategory equals C
where [Clauses to filter Cs]
select D;

关于c# - 如何检查列表包含 Linq to sql 中的多个值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6740735/

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