linq - 如何使用 Linq 和 IN 子句

标签 linq

这是我的代码

if (catid != 0)
            posts = posts.Where(x => x.catid IN '1,8,2,109,23');

在此代码中显示为语法错误。有没有办法来解决这个问题

最佳答案

您也必须使用另一个列表进行比较。

List<int> cadIdFoundList = new List<int>();

cadIdFoundList.Add(1);
cadIdFoundList.Add(8);
// etc. . . 

posts.Where(x => cadIdFoundList.Contains(x.catId));

关于linq - 如何使用 Linq 和 IN 子句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2015794/

相关文章:

linq - 哪个查询表达式相当于以下 LINQ 查询?

c# - 表达式 lambda 和语句 lambda 的区别

c# - 在 linq 中使用数据透视表

c# - 为 IQueryable<T> 创建自定义 OrderByDescending()

c# - 在 C# 中使用 LINQ Distinct

c# - Linq - 在 Lambda 表达式中使用数组来获取多条记录

performance - Entity Framework ,在存储库而不是服务层查询是否有任何性能改进?

c# - 如何在具有一个不同值的列表中查找相同的类

c# - LINQ 查询需要更多时间来执行

c# - 允许用户选择要导入的列标题