Как настроить генерацию значения поля при изменении записи для code first в ef core?
При генерации ДБ в режиме code first можно задать правило присвоения значения по умолчанию для поля при добавлении новой записи в таблицу. Например (для PSQL):
Есть ли возможность для code first установить значение поля при обновлении записи (триггер или как-то по другому)? Например, надо автоматически устанавливать поле с датой последнего обновления (DateUpdate).
Самое простое дописать в миграцию в Up метод, migrationBuilder.Sql(......) - создание триггера в базе. ну и в Down его удалить. Соответственно, если удаляем миграцию или переделываем, каждый раз добавляем.
Переопределить SaveChanges?
Можете пометить свои сущности, у которых будет одинаковое поле "DateUpdate" интерфейсом и внутри переопределенного SaveChanges(Async) делать так:
Таким образом просто помечая сущности интерфейсом вы сразу накладываете на них эту логику (не забудьте потом сделать миграцию, чтобы поле в базе появилось).