使用 !Linq 的 Where() 方法中的 (NOT) 操作数,用于 c#



我在数据库中收集了大量水果。

其中一些水果还没有完成,即它们缺少一些细节,如颜色、质地、大小等。在这种情况下,缺少的属性是颜色。

使用linq的Where()方法,我确信我可以过滤掉所有这些没有颜色的水果,并将其作为水果。

问题是我不确定语法是如何工作的,出于某种原因,我尽管fruitsfruitfinder.fruits都是Fruit集合存在一个隐含的强制转换问题。

FruitCollection fruits = null;
//Initializing the fruits collection here
//What I want is to only retrive the fruits which have a color
fruits = fruitFinder.fruits.Where( f => f.color != null );

这只是一个例子,但这里提供的答案保持了问题的通用性,可以回答我的具体问题。

fruits将是IEnumerable<Fruit>,而不是像那样的FruitCollection

IEnumerable<Fruit> fruits = fruitFinder.fruits.Where( f => f.color != null );

我假设水果类型是Fruit,但你明白了。

相关内容

最新更新