O que Collection.Contains () usa para verificar objetos existentes?

Eu tenho uma lista fortemente digitada de objetos personalizados, MyObject, que possui um ID de propriedade junto com algumas outras propriedades.
Digamos que o ID de um MyObject o define como exclusivo e quero verificar se minha coleção ainda não possui um objeto MyObject com um ID 1 antes de adicionar meu novo MyObject à coleção.
Eu quero usar if (! List.Contains (myObj)), mas como impor o fato de que apenas uma ou duas propriedades do MyObject o definem como exclusivo?
Posso usar o IComparable? Ou preciso apenas substituir um método Equals, mas preciso herdar algo primeiro, certo?



obrigado

questionAnswers(6)

yourAnswerToTheQuestion