La bonne réponse était le choix "3" ... Je cherche à comprendre pourquoi certaines méthodes Equals du framework .Net sont remplies de bugs .... Evidement ce bug ne se retrouve pas dans Mono ... ;)
Il existe également d'autres classes qui lanceront une exception si on passe pas le même type à la méthode Equals associé à l'objet comme par exemple:
  • System.Data.DataKey
  • System.Web.Configuration.TagPrefixInfo
  • System.Web.Compilation.CompilerType
Ce post a pour but de mettre en garde toute implémentation utilisant les méthodes Equals du framework ;-( (et de loin ... du Contains etc ....). Je suis également très intéressé si vous avez d'autres bugs (...) que vous avez rencontré dans le passé ... Avez-vous trouvé une solution pour contourner ces problèmes ?