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

IWindsorContainer

public interface IWindsorContainer : IDisposable
The IWindsorContainer interface exposes all the functionality that Windsor implements.
IKernel Kernel { get; }

Returns the inner instance of the MicroKernel

string Name { get; }

Gets the container's name

IWindsorContainer Parent { get; set; }

Gets or sets the parent container if this instance is a sub container.

void AddChildContainer(IWindsorContainer childContainer)

Registers a subcontainer. The components exposed by this container will be accessible from subcontainers.

Registers a facility within the container.

IWindsorContainer AddFacility<TFacility>() where TFacility : IFacility

Creates and adds an IFacility facility to the container.

IWindsorContainer AddFacility<TFacility>(Action<TFacility> onCreate) where TFacility : IFacility

Creates and adds an IFacility facility to the container.

Gets a child container instance by name.

Runs the installers so that they can register components in the container.

Registers the components with the IWindsorContainer. The instances of IRegistration are produced by fluent registration API. Most common entry points are For<T> method to register a single type or (recommended in most cases) FromAssembly. Let the Intellisense drive you through the fluent API past those entry points.

void Release(object instance)

Releases a component instance

Remove a child container

object Resolve(string key, Type service)

Returns a component instance by the key

object Resolve(Type service)

Returns a component instance by the service

object Resolve(Type service, Arguments arguments)

Returns a component instance by the service

T Resolve<T>()

Returns a component instance by the service

T Resolve<T>(Arguments arguments)

Returns a component instance by the service

T Resolve<T>(string key)

Returns a component instance by the key

T Resolve<T>(string key, Arguments arguments)

Returns a component instance by the key

object Resolve(string key, Type service, Arguments arguments)

Returns a component instance by the key

T[] ResolveAll<T>()

Resolve all valid components that match this type.

Resolve all valid components that match this service the service to match

Array ResolveAll(Type service, Arguments arguments)

Resolve all valid components that match this service the service to matchArguments to resolve the service.

T[] ResolveAll<T>(Arguments arguments)

Resolve all valid components that match this type. The service typeArguments to resolve the service.