如何检查我的收藏中是否有符合条件的记录?

Sam*_*tar 5 c# linq

我有一个名为book的Book对象集合.Book类有一个名为Title的字段.

是否有一种简单的方法使用Linq(或其他)来查明该集合是否具有标题为"Harry"的Book对象?

Joh*_*mer 8

你可以使用这个Any()方法:

book.Any(b => string.Equals(b.Title, "Harry"));
Run Code Online (Sandbox Code Playgroud)

这将通过您的book收藏,直到找到一个标题为"Harry"或收藏结束的书.如果它找到一本具有正确标题的书,它将停止通过您的收藏并返回true.如果它到达集合的末尾,则返回false.

编辑:请注意,这是一个文化不敏感的相等检查.您可能希望根据您的用例来执行对文化敏感的操作.

  • b.Title.Equals如果Title为null则有点危险.它应该是book.Any(b => string.Equals(b.Title,"Harry")) (3认同)
  • 为LINQ添加using指令:`using System.Linq;` (2认同)