Yo - это не проблема ravendb как таковая - это еще один вопрос дизайна, относящийся к документам dbs в целом.
Так что я использовал DenormalizedReference совсем немного, и мне пришло в голову, что во многих местах это делает DDD довольно сложным.
Итак, скажем, например, у меня есть объект с дочерней коллекцией:
List<DenormalizedReference<SomeType>>
Эта дочерняя коллекция создается, когда родительский экземпляр создается с помощью перегруженного конструктора, принимающего List<SomeOtherType>
теперь - в ctor я хотел бы создать этот список из передаваемой коллекции SomeOtherType - это означает, что мне нужно будет создать новый SomeType для каждого SomeOtherType.
Без передачи DocumentSession в мой домен - чего я не собираюсь делать - это не сработает, потому что при сохранении родительского AR мы теряем свойства каждого дочернего объекта, кроме Id и Name.
Как все остальные справляются с этим?