LINQ IEnumerable在哪里找不到元素

Jon*_*Jon 2 c# linq

我有一个课程项目列表 List<MyClass>

我有一个MyClass类型的单独对象

在我的列表中,我有一个这个项目的实例,但我的where语句失败了.

var home = Item.Find(23);
var item = allitems.Where(i => i == home);
Run Code Online (Sandbox Code Playgroud)

项目没有结果

allitems.Contains(home) 也失败了.

我究竟做错了什么?

Ste*_*per 5

他们肯定是同一件物品吗?如果你有这种情况;

var item1 = new Place(23);
var item2 = new Place(23);
Run Code Online (Sandbox Code Playgroud)

然后item1 != item2.如果物品由某些物业识别,您可以尝试

allitems.Where(i => i.Id == home.Id)
Run Code Online (Sandbox Code Playgroud)