а в фильтре, который передается при регистрации апдейтраАга, точно. Я просто забыл - под рукой не было кода никакого))
Кстати, для решения задачи еще потребуется где-то хранить прошлое значение, это может быть Extensible storage или параметр проекта/семейства, возможно невидимый.Ну мы не знаем, что хочет автор вопроса, поэтому нет смысла и гадать варианты реализации =)
Т.е., например, 1 апдейтер реагирует на добавление элементов с фильтром по определенным критериям, читаем текущее значение параметра, пишем в extensible storage, второй апдейтер по тому же фильтру реагирует на изменение элемента, в методе Execute сравниваем значение параметра со значением, сохраненным в сторадже и, если они не совпадают, обновляем значение в сторадже и делаем что-то полезное :-)
Тогда смотрите в теме выше.
Во-первых, есть IUpdater - его метод Execute() выполняется когда "транзакция почти завершена", в нем можно получить все добавленные / измененные элементы согласно фильтра, который передается при его регистрации, здесь можно вносить изменения в модель
Во-вторых, событие DocumentChanged, в него уже прилетают все изменения, получаем элементы, анализируем, что-то делаем (но без возможности вносить изменения в модель)
Тогда смотрите в теме выше.
Во-первых, есть IUpdater - его метод Execute() выполняется когда "транзакция почти завершена", в нем можно получить все добавленные / измененные элементы согласно фильтра, который передается при его регистрации, здесь можно вносить изменения в модель
Во-вторых, событие DocumentChanged, в него уже прилетают все изменения, получаем элементы, анализируем, что-то делаем (но без возможности вносить изменения в модель)
Если нет возможности вносить изменения в модель (изменять например значение параметра элемента), то возможно ли как то в DocumentChanged использовать метод Execute() ? или наоборот...
Зачем вообще нужен DocumentChanged, если можно обойтись IUpdater'ом?