Methods such as Contains, IndexOf, LastIndexOf, and Remove use an equality comparer for the list elements. The default equality comparer for type T is determined as follows. If type T implements the IEquatable generic interface, then the equality comparer is the Equals method of that interface; otherwise, the default equality comparer is Object.Equals." So, you should implement the IEquatable interface on your Car object, and tell it to compare the _name elements for the equality test.
e.g. (not a complete class !) public class Car : IEquatable
{ ... protected string _name; public string Name { get { return _name; } ... }
#region IEquatable Members
public bool Equals(Car other)
{ bool result = false;
if( this.Name == other.Name )
{ result = true; }
return result;
} #endregion
}
Comments
Post a Comment