假设有一串逗号分隔的文本值,如数组:
var excludelist ="apples,oranges,grapes,pears";
excludelist值可能来自对数据库中表的查询。
假设一个查询,其中我们要返回所有行,除了名为Fruit的字段包含来自excludelist的任何项目的那些行。
var qry = from s in context.Groceries.Where(s => s.Fruit(here is where we need to exclude the items??) join u in context.Users on s.Owner equals u.User_ID
有人可以提供示例链接到SQL答案吗?
答案 0 :(得分:0)
你试过Except
吗?
var qry = from s in context.Groceries.Except(excludelist)...
SQL链接有CONTAINS
(和!CONTAINS)
where !excludelist.Contains(i)
select i;
答案 1 :(得分:0)
我这样解决了:
我有一个数据库表,其中包含我想要排除的水果的名称,我创建了一个List(IList显然不起作用)。
List<string> excludedfruit = context.ExcludedFruit.Select(x => x.ExcludedFruitName).ToList();
然后我使用了以下Linq to SQL查询(部分显示)
var qry = from s in context.Groceries
.Where(s => !excludedfruit.Contains(s.Fruit))