NServiceBus с Unity 2.0?

Любой, кто использует NServiceBus 2.0 успешно с Unity 2.0?

Я попытался скомпилировать источники NServiceBus.ObjectBuilder.Unity.dll против сборок Unity 2.0, но получил несколько ошибок времени компиляции из-за измененных/удаленных подписей многих методов объектов в новом Unity.

В документации Udi Dahan говорит, что прикрепление любого контейнера так же просто, как реализация 5 методов IContainer. Но когда я смотрю на реализацию NServiceBus.ObjectBuilder.Unity, я вижу, что есть еще много работы. Почему это так?

Ответы

Ответ 1

Единство, по умолчанию, ведет себя не так, как ожидает NSB. Именно поэтому существует необходимость в некоторых пользовательских расширениях, чтобы сделать его совместимым с контрактом ObjectBuilder. Существуют два основных отличия:

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

Я считаю, что эти функции сохранены в версии 2.0, и их легко будет перенести. У меня должно быть некоторое время на этой неделе, и я надеюсь, что создам реализацию Unity v2. Я сообщу вам, когда закончится.

Изменить: Готово. Конструктор объектов Unit 2 находится в багажнике.