Допустим, все ваши переменные привязаны к одному и тому же контексту.Вы хотите знать, является ли ваша переменная bar1
одним из значений бара в коллекции foo.bars
.Вы можете просто сделать:
theyAreEqual = foo.bars.Contains(bar1);
Если ваши переменные сущности не привязаны к контексту, то у вас могут быть разные переменные, которые логически ссылаются на одни и те же записи БД, но на самом деле являются указателями на разные предметов.Итак, вам нужно сравнить ключевые значения:
theyAreLogicallyEqual = foo.bars.Select(b => b.BarId).Contains(bar1.BarId);
Я предполагаю, что вы знаете об этом, но для других читающих этот ответ, разница в значении и равенстве ссылочного типа здесь важно.