Ninject 빌더와 함께 NServiceBus 4.0.3을 사용 중이며 메시지 변형 자 (IMutateTransportMessages
)를 등록하는 방법을 알 수 없습니다.웹 응용 프로그램에 메시지 변경자를 등록하는 방법
Ninject 커널에 뮤 테이터를 등록했지만 호출되지 않습니다.
private static IBus ConfigureBus(IKernel kernel)
{
kernel.Bind<IMutateTransportMessages>().To<SendTenantIdMutator>();
return NServiceBus.Configure.With()
.NinjectBuilder(kernel)
.XmlSerializer()
.MsmqTransport()
.IsTransactional(false)
.PurgeOnStartup(true)
.UnicastBus()
.LoadMessageHandlers()
.CreateBus()
.Start(() => Configure.Instance.ForInstallationOn<Windows>().Install());
}
일반적인 NServiceBus 컨테이너 API와 달리 Ninject에 직접 뮤 테이터를 등록해야하는 특별한 이유가 있습니다. Configure.Instance.Configurer.ConfigureComponent (DependencyLifecycle.SingleInstance); –
사용중인 NSB의 버전을 알려주시겠습니까? 컨테이너를 방해하는 최신 릴리스의 내부 변경 사항이 있습니다. 이것은 나에게 괜찮은 대답을 제공하는 데 도움이됩니다. –
@UdiDahan은 여전히 내부적으로 Ninject를 사용하는 컨테이너 API를 수행합니까? –