I want my Food
class to be able to test whenever it is equal to another instance of Food
. I will later use it against a List, and I want to use its List.Contains()
method. Should I implement IEquatable<Food>
or just override Object.Equals()
? From MSDN:
This method determines equality by
using the default equality comparer,
as defined by the object’s
implementation of the
IEquatable.Equals method for T
(the type of values in the list).
So my next question is: which functions/classes of the .NET framework make use of Object.Equals()
? Should I use it in the first place?