-3

可能重复:
您将如何使用 Linq 进行“不在”查询?

我有一个关于 LINQ 查询的问题,我有一个问题List<int> foo;,现在我需要检查以下内容:

var output = select a from db.User where a.id not in foo select a;

我怎么能意识到这一点:a.id 不在 foo 中

4

3 回答 3

3

如果foo是一个列表,那么where !foo.Contains(a.id)

于 2012-10-16T11:27:03.940 回答
2

使用列表中的 contains 方法

var output = from a in db.User where !foo.Contains(a.id) select a;
于 2012-10-16T11:26:43.270 回答
2

我的博客:SQL to LINQ(案例 7 - 使用 IN 和 NOT IN 子句过滤数据)

你用,where <list>.Contains( <item> )

var foo = {1, 2, 3};
var users = from p in db.users
                 where !foo.Contains(p.id)
                 select p;

此的图像表示

在此处输入图像描述

于 2012-10-16T11:26:56.047 回答