Я использую подход базы данных с ядром EF и пытаюсь найти чистое решение для следующей проблемы -
Рассмотрим таблицу посещаемости ученика (несущественные столбцы удалены) ниже, в которой хранится дата занятия и позволяет ученику ввести свой рейтинг класса -
create table Student (
Id int Identity(1, 1) not null,
ClassDate smalldatetime not null,
ClassRatingByStudent varchar(250) not null
)
Это веб-приложение, в котором система посещаемости школы автоматически заполняет вышеуказанную таблицу в EOD, а затем студент (скажем, через несколько дней) должен добавить оценки класса. Когда таблица заполняется системой посещаемости школы, в столбце ClassRatingByStudent ничего нет. Затем, когда студент входит в систему, он должен добавить оценку.
Как видите, ClassRatingByStudent должен быть нулевым, когда система посещаемости школы заполняет таблицу, и должен быть не нулевым, когда ученик сохраняет свои изменения. Одно очевидное решение - сделать так, чтобы столбец ClassRatingByStudent обнулялся и обрабатывал его в коде, но мне интересно, существует ли более точное решение для базы данных (или, может быть, EF) или есть какие-то рекомендации по шаблонам / архитектуре для этого типа сценариев?