Я предполагаю, что вы хотели спросить, возвращает ли Items.Contains (BsonItem) логическое значение, если элементы соответствуют на основе вашего примера кода?
.Contains (BsonItem) проверит равенство на основе реализации BsonItemIEquatable.По умолчанию он будет искать тот же экземпляр BsonItem, предполагая, что BsonItem является ссылочным типом.
Если вы хотите проверить что-то вроде BsonItem.id == anotherBsonItem.id, вы можете использовать Where () вродеИтак:
items.Where(o => o.id == anotherItem.id);
Если вы не хотите реализовывать IEquatable самостоятельно, вы также можете использовать это для проверки существования:
items.Count(o => o.id == anotherItem.id) >= 1;
Sidenote: Если вы решили реализовать IEquatable,Вы также должны иметь дело с GetHashCode