Как утверждать, что два списка содержат элементы с одинаковыми открытыми свойствами в NUnit?

Я хочу утверждать, что элементы двух списков содержат значения, которые я ожидал, что-то вроде:

var foundCollection = fooManager.LoadFoo();
var expectedCollection = new List<Foo>() 
{
    new Foo() { Bar = "a", Bar2 = "b" },
    new Foo() { Bar = "c", Bar2 = "d" }
};

//assert: I use AreEquivalent since the order does not matter
CollectionAssert.AreEquivalent(expectedCollection, foundCollection);

Однако приведенный выше код не будет работать (наверное, потому что .Equals () не возвращает true для разных объектов с одинаковым значением). В моем тесте меня интересуют только значения общедоступных свойств, а не равенство объектов. Что я могу сделать, чтобы сделать свое утверждение?

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

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