Я работаю над проектом, в котором мы хотим сохранить историю конкретного объекта.При сохранении я хочу метод для объекта, который определит, изменился ли он, чтобы я мог вызвать метод для сохранения его текущего состояния в истории.Например, я заполняю форму из объекта, пользователь вносит изменения (или, возможно, нет) и отправляет из.Я хочу взять свой исходный объект и копию этого объекта, который был обновлен из формы, и определить, изменился ли он вообще.Кроме того, в какой-то момент я могу решить, что определенные свойства не имеют значения (например, если имя меняется, я не буду его отслеживать).
Я думаю, что самый простой / гибкий способ сделать это будет, если ямог бы дать свойства, которые мне нужны, для пользовательского атрибута [ChangeTracked], а затем я мог бы использовать отражение, чтобы получить список всех свойств с этим атрибутом и просмотреть их, сравнивая A.property == B.property, чтобы определить, изменились ли они.1003 *
Будет ли это работать?Существует ли значительно лучший / более простой способ справиться с этим, например какой-то встроенный метод, который можно добавить к объекту, чтобы определить, изменились ли значения каких-либо свойств?Безотносительно решения был бы оценен некоторый псевдо-код.Точно так же, как пояснение, решение должно определить, действительно ли изменилось значение, которое меня интересует, а не только то, было ли оно присвоено с момента его создания, т.е. если я установил Name = "bob", и оно уже было "bob" до моего назначенияэто не считается изменением.