внутри коллекция сущностей ApplicationData. Возникла необходимость сделать метод upsert'а (создания или обновления) этой дочерней сущности через Application и передачи туда айдишника. Вопрос вот в чём, вот допустим у Application есть некий метод changeFirstName, которйы либо возвращает новый инстанс ApplicationData с переданным значением имени и id, либо, если такой уже есть у анкеты, просто обновляет у него значение, в таком случае id просто напрасно был сгенерирован, это нормальная ситуация?
Можно передавать какой-нибудь IdProvider вместо Id. И этот провайдер уже вызывать внутри, если требуется
Чёто попахивает репозиторием внутри сущности
Так id вполне доменное понятие
если ты изменяешь какуюто часть агрегата (а значит его стейт), то ты не можешь не знать его стейта (есть там чтото или нет) апсёрт внутри агрегата попахивает дичью какойто, а не агрегатом
Я знаю его стейт, проблема в том, что генерация айди на уровне выше агрегата происходит
А зачем тебе id для ApplicationData?
возможно действительно не зачем
если id = null то это новый объект, если там число то существующий
не, у меня не может быть id = null, я идентификаторы в конструктор передаю заранее сгенерированные
Обсуждают сегодня