Я пытаюсь настроить свою конечную точку сообщения, отображающуюся в моей конфигурации NServiceBus путем отправки сообщений от различных пространств имен до различных конечных точек.
По сути, я настроил следующее в своем web.config:
<MessageEndpointMappings>
<add Messages="Company.Messages.Accounts" Endpoint="ServiceInput" />
<add Messages="Company.Messages.Payments" Endpoint="ServiceInput" />
<add Messages="Company.Messages.Cancellations" Endpoint="ServiceInput" />
<add Messages="Company.Messages.Notifications" Endpoint="ServiceInput" />
</MessageEndpointMappings>
Однако, когда мое приложение запускается, я получаю следующее исключение:
Spring. Объекты. PropertyAccessExceptionsException: PropertyAccessExceptionsException (1 ошибка); вложенные PropertyAccessExceptions: [Spring. Ядро. TypeMismatchException: не Может преобразовать значение свойства типа [Система. Наборы. Хеш-таблица] к необходимому типу [Система. Наборы. IDictionary] для свойства 'MessageOwners'., Внутреннее Исключение: Система. ArgumentException: проблема, загружающая блок сообщения: Компания. Сообщения. Платежи---> Система. IO.FileNotFoundException: не Мог загрузить файл или блок 'Компания. Сообщения. Платежи или одна из его зависимостей. Система не может найти файл указанным. Имя файла: 'Компания. Сообщения. Платежи
То, что я нахожу интересными, - то, что это, кажется, нашло Компанию. Сообщения. Учетные записи, но отказавший на второй настроенной строке. Я думал, что, возможно, этому не нравилось, имеют их всех, переходят к той же конечной точке, но изменяющий эту конфигурацию, чтобы сделать, чтобы они пошли, различные конечные точки не изменили сообщение об ошибке, которое я получил.
Что я делаю неправильно? Разве не возможно сегментировать сообщения пространством имен (все, что я видел, типом и блоком)?
Спасибо, Steve
NSB поддерживает только отображение сборок или отдельных типов на конечные точки. Пространства имен не поддерживаются, я предлагаю вам разделить сборку сообщений на отдельные сборки для каждой конечной точки.
Согласно этой странице, вы можете указать тип: http://docs.particular.net/nservicebus/messaging/message-owner
Конкретные типы могут быть настроены с помощью их квалифицированного имени: "namespace.type, assembly".