Castle Windsor

Source
NuGet Package NServiceBus.Extensions.DependencyInjection (1.x)
Target NServiceBus Version: 7.x

NServiceBus can be configured to use Castle Windsor for dependency injection via the NServiceBus.Extensions.Hosting or the NServiceBus.Extensions.DependencyInjection package.

var containerSettings = endpointConfiguration.UseContainer(new WindsorServiceProviderFactory());

containerSettings.ConfigureContainer(c => c.Register(Component.For<MyService>().Instance(new MyService())));

DependencyLifecycle Mapping

DependencyLifecycle maps to Castle's LifestyleType as follows:

DependencyLifecycleLifestyleType
InstancePerCallTransient
InstancePerUnitOfWorkScoped
SingleInstanceSingleton

Property Injection

This dependency injection container adapter automatically enables property injection for known types. Use the Func overload of .ConfigureComponent to get full control over the injected properties if needed.

Samples


Last modified