У меня есть пример, аналогичный тому, что описано здесь :
Идентификационные данные объекта могут пересекать несколько микросервисов или ограничены
контексты.
Та же самая идентичность (то есть, то же самое значение Id, хотя, возможно, не
один и тот же объект домена) может быть смоделирован для нескольких ограниченных
Контексты или микросервисы. Однако это не означает, что то же самое
сущность, с такими же атрибутами и логикой будет реализована в
несколько ограниченных контекстов. Вместо этого сущности в каждом ограниченном контексте
ограничить их атрибуты и поведение теми, которые требуются в этом ограниченном
Домен контекста.
Например, покупатель может иметь большую часть
атрибуты, которые определены в пользовательском объекте в профиле или
микросервис идентичности, в том числе личность. Но покупатель в
заказывающий микросервис может иметь меньше атрибутов, потому что только
определенные данные покупателя связаны с процессом заказа. Контекст
каждый микросервис или ограниченный контекст влияет на свою модель предметной области.
В моем случае у меня есть Subscription
модель, которая имеет два разных ограниченных контекста, которые имеют свои собственные атрибуты.
Если пойти еще дальше, Subscription
принадлежит Agency
, а Agency
может иметь только один (не 0, не много) Subscriptions
.
Итак, исходя из этого, я думал о том, каким будет совокупный идентификатор. Так как Subscription
имеет отображение 1-1 с Agency
, можно ли использовать тот же идентификатор, что и Agency
?
Я думаю, что это имеет смысл, поскольку Subscription
не нужен собственный идентификатор. Даже если это не так, я не думаю, что оно будет возвращено пользователю, пользователь может ссылаться на него через собственный Agency
id.
В этом ограниченном контексте агрегат Agency
(или его атрибуты) не имеет значения, поэтому я не верю, что они являются частью одного агрегата.
Подводя итог, можно ли агрегату совместно использовать идентификатор другого агрегата, если это отображение 1-1?