<PackageReference Include="Castle.Windsor" Version="4.0.0" />

OnDestroyComponentDescriptor<S>

using Castle.Core; using Castle.MicroKernel.LifecycleConcerns; namespace Castle.MicroKernel.ModelBuilder.Descriptors { public class OnDestroyComponentDescriptor<S> : IComponentModelDescriptor, IMetaComponentModelDescriptor where S : class { private readonly LifecycleActionDelegate<S> action; public OnDestroyComponentDescriptor(LifecycleActionDelegate<S> action) { this.action = action; } public void BuildComponentModel(IKernel kernel, ComponentModel model) { } public void ConfigureComponentModel(IKernel kernel, ComponentModel model) { model.Lifecycle.AddFirst(new OnDestroyConcern<S>(action, kernel)); } } }