Я пытаюсь расширить классы linqtosql, созданные дизайнером VS, и мне нужно определить, изменилось ли значение определенного поля. Есть ли способ получить доступ к значениям до и после для поля в методе DataContext Update для таблицы/объекта?
Вот мой код:
public partial class DataClassesDataContext
{
partial void UpdateActivity(Activity instance)
{
this.ExecuteDynamicUpdate(instance);
//need to compare before and after values to determine if instance.AssignedTo value has changed and take action if it has
}
}
Я также открыт для добавления свойства в класс сущности Activity, чтобы сигнализировать об изменении значения, но я не могу понять, как определить, изменилось ли значение и там. Я не могу просто использовать метод OnAssignedToChanged класса Activity, потому что он срабатывает всякий раз, когда значение свойства установлено, а не обязательно изменено. Я использую элемент управления ListView и LINQDataSource для обновления, поэтому он устанавливается, несмотря ни на что.
Я также подумал, что смогу использовать метод OnAssignedToChanging, но экземпляр Activity, похоже, не имеет текущих значений в этот момент. Следующий код не работает, так как this.AssignedTo всегда имеет значение null.
partial void OnAssignedToChanging(int? value)
{
if (value != this.AssignedTo)
{
_reassigned = true;
}
}