Можно создать дубликат:
Comparing object properties in c#Как сравнить поля/свойства между POCOs?
Допустим, у меня есть ПОКО:
public class Person
{
public string Name { get; set; }
public DateTime DateOfBirth { get; set; }
public IList<Person> Relatives { get; set; }
}
Я хочу, чтобы сравнить два экземпляра Person, чтобы увидеть, если они равны друг друга. Естественно, я бы сравнил Name
, DateOfBirth
и коллекцию Relatives
, чтобы увидеть, равны ли они. Тем не менее, это потребует от меня переопределения Equals()
для каждого POCO и ручной записи сравнения для каждого поля.
Мой вопрос в том, как я могу написать общую версию этого, поэтому мне не нужно делать это для каждого POCO?
Спасибо, я постараюсь ваш код из. –
Хм, я попробовал, но массивы 'properties' и' fields' пусты. –
Понял почему. Удалите переменную publicBinding или используйте другой тип перечисления, чем DeclaredOnly или Public. –