Как настроить MessageEndpointMapping пространством имен в NServiceBus

Я пытаюсь настроить свою конечную точку сообщения, отображающуюся в моей конфигурации 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

12
задан Dylan Beattie 10 March 2011 в 15:21
поделиться

2 ответа

NSB поддерживает только отображение сборок или отдельных типов на конечные точки. Пространства имен не поддерживаются, я предлагаю вам разделить сборку сообщений на отдельные сборки для каждой конечной точки.

13
ответ дан 2 December 2019 в 19:31
поделиться

Согласно этой странице, вы можете указать тип: http://docs.particular.net/nservicebus/messaging/message-owner

Конкретные типы могут быть настроены с помощью их квалифицированного имени: "namespace.type, assembly".

5
ответ дан 2 December 2019 в 19:31
поделиться
Другие вопросы по тегам:

Похожие вопросы: