Equality between two enumerables

Ich habe zwei Enumerables mit genau den gleichen Referenzelementen und frage mich, warum Equals nicht wahr wäre.

Als Nebenfrage funktioniert der folgende Code zum Vergleichen der einzelnen Elemente, aber es muss einen eleganteren Weg geben

var other = (ActivityService) obj;
if (!AllAccounts.Count().Equals(other.AllAccounts.Count())) return false;
for (int i = 0; i < AllAccounts.Count(); i++) {
    if (!AllAccounts.ElementAt(i).Equals(other.AllAccounts.ElementAt(i))) {
        return false;
    }
}
return true;

Antworten auf die Frage(2)

Ihre Antwort auf die Frage