Я создаю веб-сайт, чтобы пользователи могли создавать расписание, состоящее из нескольких задач. Информация о расписании и задачах хранится в базе данных.
При создании расписания пользователь может добавлять, редактировать или удалять столько задач, сколько он хочет, прежде чем, наконец, сохранить расписание. Эти изменения сохраняются в базе данных, чтобы пользователь мог продолжить редактирование позже (если его сеанс неожиданно завершится или он будет прерван).
Каждый раз, когда поступает запрос на обновление задачи, веб-сайт вызывает соответствующий метод из моего уровня доступа к данным, а затем повторно запрашивает весь объект данных расписания из базы данных для отображения пользователю.
Это кажется излишним, когда редактируется только задача. Я хочу кэшировать объект расписания и его список задач в HttpContext.Session и обновлять только изменяемую отдельную задачу (или объект расписания при его изменении).
Существуют ли какие-либо опасности, связанные с рассинхронизацией двух моих версий, если я обновляю свой кэшированный объект только тогда, когда получаю подтверждение того, что операция редактирования прошла успешно?