c# - linq中IN运算符的使用方法

标签 c# linq linq-to-objects

我正在查询 View 并使用名为 status 的列过滤结果。我想查询它,以便我可以像在 SQL 中那样使用 IN 运算符搜索具有不同状态的行。

这样:

SELECT * FROM VIEW WHERE Status in ('....', '.....')

我怎样才能做到这一点?

最佳答案

如果您的查询表达式使用 IEnumerable 对象的 Contains 方法,解析器将使用中的值将其转换为 IN 表达式IEnumerable

List<string> foo = new List<string>() { "a", "b", "c" };

var query = dataContext.View.Where(v => foo.Contains(v.Status));

关于c# - linq中IN运算符的使用方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3024201/

相关文章:

c# - 如何在 *config 文件中保存键的值

javascript - ASP.NET Gridview 如何访问字段上的复选框

c# - 使用 Devart 或 NHibernate

c# - 比较数组或其他方法

c# - 使用 LINQ 对对象列表进行分组

c# - 如何在 .NET Core Web API 中向 Swagger UI 添加上传按钮?

c# - LINQ 到实体 : queryable extension method not reconized inside where condition

c# - Linq 到 SQL : Get Top 5 Rated products

c# - 从一个集合中删除另一个集合中的项目

c# - 多 channel GroupBy() 如何比单 channel 更快?