В настоящее время я использую EventStore J Oliver, который, как я понимаю, использует Guids для идентификатора потока, и это то, что используется для создания моего совокупного корня.
С точки зрения CQRS и DDD я должен думать о домене, а не о GUID.
Итак, если я выполняю GET (Mvc-клиент), могу ли я сказать, что в моем URL-адресе должен быть идентификатор объекта моего домена (совокупного корня), и из этого я получаю GUID из хранилища для чтения, которое затем используется построить мой сводный корень из хранилища событий?
Или я должен передать GUID своим формам и передать их обратно как скрытые переменные формы? По крайней мере, таким образом я знаю совокупный корневой идентификатор и не должен запрашивать хранилище для чтения?
Я полагаю, что первый путь - это правильный путь (без использования GUID в формах), так как тогда все мои Gets и POSTS имеют дело с идентификаторами объектов домена, а не с GUIDS, которые клиент не будет знать.
Я полагаю, что это также позволяет мне создавать API на основе REST, который фокусируется на ресурсах и их идентичности, а не на генерируемых системой GUIDS. Пожалуйста, поправьте меня, если я ошибаюсь.
JD