关于Any()的简单LINQ问题

Nic*_*rca 0 linq

我想写一个linq查询来做到这一点

Select id from selectedBrands 
where name='Nick' or name='Matt'
Run Code Online (Sandbox Code Playgroud)

这个linq是正确的????

  var brandsToNotShow=new[] {"Nick","Matt"};
    model.Names=

                    (from s in selectedBrands
                    where  brandsToNotShow.Any()
                    select s.Brand.name
                ).ToList();
Run Code Online (Sandbox Code Playgroud)

其中model.Names是List

Jim*_*mmy 5

不,这不对.

brandsNotToShow.Any() 
Run Code Online (Sandbox Code Playgroud)

问"这个列表中是否有任何元素",答案是肯定的,有两个要素.

此查询可能更接近您的要求:

 from s in selectedBrands
 where brandsNotToShow.Contains(s.Brand.Name)
 select s.Brand.Name
Run Code Online (Sandbox Code Playgroud)

(实际上,如果它的品牌显示,它可能是

where !brandsNotToShow.Contains(s.Brand.Name)
Run Code Online (Sandbox Code Playgroud)

我不能从你的例子中说出来)