DDD и MongoDB :Можно ли позволить Mongo создавать ObjectID?

Согласно Синей книге DDD (, Эванс )Фабрика несет ответственность за создание Агрегатного корня в допустимом состоянии. Означает ли это, что он должен иметь возможность создавать технический идентификатор (objectId в мире mongoDB ), а также идентификатор домена?

С одной стороны, это кажется технической деталью, и было бы нормально позволить Mongo заняться созданием идентификатора.

С другой стороны, включение запросов по идентификатору (при наличии getByIdв репозитории DDD )предоставляет домену технический идентификатор, что, в свою очередь, возлагает ответственность за его создание на Фабрику.

Возможно, я не могу понять различные варианты использования -/ совпадения и т. д. технических идентификаторов и доменных идентификаторов, или, возможно, я переусердствую, но я все равно был бы признателен за ваше мнение.

Короче :В DDD :Должна ли фабрика иметь возможность создавать как технический идентификатор, так и идентификатор домена?

возможная реализация :Hi/Lo(Как установить начальное значение последовательности hilo в MongoDB Norm?)

РЕДАКТИРОВАТЬ:хотя путь hi/lo предоставляет Фабрике уровень персистентности, который должен знать только репозиторий. хммм

Спасибо

5
задан Community 23 May 2017 в 12:16
поделиться