judantes de implementação do método Equals (C #)

empre que escrevo alguma classe de dados, geralmente passo muito tempo escrevendo a implementação do IEquatabl

A última aula que escrevi foi algo como:

public class Polygon
{
    public Point[] Vertices { get; set; }
}

implementação do IEquatable foi exaustiva. Certamente, o C # 3.0 / LINQ ajuda muito, mas os vértices podem ser alterados e / ou na ordem inversa, e isso adiciona muita complexidade ao método Equals. Depois de muitos testes de unidade e implementação correspondente, desisti e mudei meu aplicativo para aceitar apenas triângulos, cuja implementação IEquatable exigia que apenas 11 testes de unidade fossem totalmente coberto

Existe alguma ferramenta ou técnica que ajude a implementar Equals e GetHashCode?

questionAnswers(4)

yourAnswerToTheQuestion