我有这样的产品清单

var r = db.Products.Where(x => x.Sites
                                .Where(z => z.Key == associatedProducts.Key)
                                .Any()
                  ).ToList()

有一个实体叫做产品,我想从产品中获取所有元素,除了那些在关联产品中存在的元素。
我该怎么做?

最佳答案

如果在previos查询中使用ef获取associatedproducts列表,则以下查询有效。

var temp = db.Products.ToList().Except(associatedProducts).ToList();

否则,如果associatedProducts是一个未使用ef获取的列表(假设Key是一个整数);
List<int> tempIdList = associatedProducts.Select(q => q.Key ).ToList();
var temp = db.Products.Where(q => !tempIdList.Contains(q.Key));

关于c# - 使用 Entity Framework 从SQL数据库获取所有内容,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14682310/

10-09 02:27