Linq表达式获取IList中的所有项目,其中一个字段位于另一个列表中

cod*_*ing 3 c# linq

此集合包含整个产品数据库:

IList<Products> allProducts;
Run Code Online (Sandbox Code Playgroud)

这仅包含该用户的所有产品的guid:

IList<Guid> usersProducts;
Run Code Online (Sandbox Code Playgroud)

下面是我需要的伪代码,即IList中给定用户的所有产品类,产品类型== 1.

var filteredProducts = (p from allProducts
                       where p.Id in usersProducts && p.Type == 1).List();
Run Code Online (Sandbox Code Playgroud)

我无法弄清楚如何进行SQL查询"WHERE IN(...,...,)

Sam*_*ich 7

var filteredProducts = (from p in allProducts
                            where usersProducts.Contains(p.Id) && p.Type == 1
                            select p).ToList();
Run Code Online (Sandbox Code Playgroud)