Почему SequenceEqual для List <T> возвращает false?

Привет у меня есть некоторые проблемы сSequenceEqual когда у меня такая ситуация:

Sentence s1 = new Sentence { Text = "Hi", Order = 1 };
Sentence s2 = new Sentence { Text = "Hello", Order = 2 };
List<Sentence> list1 = new List<Sentence> { s1, s2 };
List<Sentence> list2 = new List<Sentence> { s1, s2 };

и это отлично работает

bool equal = list1.SequenceEqual(list2);

и возвращаетсяtrue;

но когда у меня есть метод, который возвращаетList<Sentence> например:

public List<Sentence> Getall()
    {
        Sentence s1 = new Sentence { Text = "Hi", Order = 1 };
        Sentence s2 = new Sentence { Text = "Hello", Order = 2 };

        return new List<Sentence> { s1, s2 };
    }

и используйте это так:

List<Sentence> list1 = Getall();
List<Sentence> list2 = Getall();

а потом просто проверь

bool equal = list1.SequenceEqual(list2);

он возвращает «ложь», пожалуйста, скажите мне, почему? и как заставить это работать?

Ответы на вопрос(3)

Ваш ответ на вопрос