NServiceBus и общие типы событий
Я делаю некоторую работу с использованием фреймворков NCQRS и NServiceBus 3.3.4. Я боролся с получением некоторых подписок, и насколько я могу судить, все мои настройки на 100% верны.
После некоторых копаний я заметил, что имя MessageType, сохраненное в документе подписки в Raven DB, выглядит немного странно. Платформа NCQRS оборачивает событие домена в общий тип с именем EventMessage'1. Теперь, когда это сообщение сохраняется в хранилище подписок, кажется, что оно отрубает часть имени, см. Ниже:
Ncqrs.Nsb.EventMessage`1[[Platform.Events.Category.CategoryRemoved, Version=1.0.0.0
Где бы я ожидал, что имя будет более похожим на это:
Ncqrs.Nsb.EventMessage`1[[Platform.Events.Category.CategoryRemoved, Version=1.0.0.0]]
По крайней мере.
Может ли это быть ошибкой или я что-то не так делаю? Мои подписки в app.config выглядят следующим образом:
<add Messages="Ncqrs.NServiceBus.EventMessage`1[[Platform.Events.Category.CategoryRemoved, Platform.Events]], Ncqrs.NServiceBus" Endpoint="core.platform.domain" />
Это сводит меня с ума!
1 ответ
Это не ошибка, NServiceBus не будет поддерживать это, так как мы хотим подтолкнуть вас к использованию более явных контрактов сообщений. Возможно, есть способ настроить NCQRS, чтобы не требовать, чтобы "EventMessage" был штучкой?