Castle.Windsor.IWindsorContainer
The IWindsorContainer interface exposes all the
functionality the Windsor implements.
namespace Castle.Windsor
{
public interface IWindsorContainer : IDisposable
{
IKernel Kernel { get; }
string Name { get; }
IWindsorContainer Parent { get; set; }
[Obsolete("Use Resolve<object>(key) instead.")]
[EditorBrowsable(EditorBrowsableState.Never)]
object this[string key] { get; }
[Obsolete("Use Resolve(service) or generic version instead.")]
[EditorBrowsable(EditorBrowsableState.Never)]
object this[Type service] { get; }
void AddChildContainer(IWindsorContainer childContainer);
IWindsorContainer AddFacility(IFacility facility);
IWindsorContainer AddFacility<TFacility>() where TFacility : IFacility, new;
IWindsorContainer AddFacility<TFacility>(Action<TFacility> onCreate) where TFacility : IFacility, new;
IWindsorContainer GetChildContainer(string name);
IWindsorContainer Install(params IWindsorInstaller[] installers);
IWindsorContainer Register(params IRegistration[] registrations);
void Release(object instance);
void RemoveChildContainer(IWindsorContainer childContainer);
object Resolve(string key, Type service);
object Resolve(Type service);
object Resolve(Type service, IDictionary arguments);
object Resolve(Type service, object argumentsAsAnonymousType);
T Resolve<T>();
T Resolve<T>(IDictionary arguments);
T Resolve<T>(object argumentsAsAnonymousType);
T Resolve<T>(string key);
T Resolve<T>(string key, IDictionary arguments);
T Resolve<T>(string key, object argumentsAsAnonymousType);
object Resolve(string key, Type service, IDictionary arguments);
object Resolve(string key, Type service, object argumentsAsAnonymousType);
T[] ResolveAll<T>();
Array ResolveAll(Type service);
Array ResolveAll(Type service, IDictionary arguments);
Array ResolveAll(Type service, object argumentsAsAnonymousType);
T[] ResolveAll<T>(IDictionary arguments);
T[] ResolveAll<T>(object argumentsAsAnonymousType);
IWindsorContainer AddComponent(string key, Type classType);
IWindsorContainer AddComponent(string key, Type serviceType, Type classType);
IWindsorContainer AddComponent<T>();
IWindsorContainer AddComponent<T>(string key);
IWindsorContainer AddComponent<I, T>() where T : class;
IWindsorContainer AddComponent<I, T>(string key) where T : class;
IWindsorContainer AddComponentLifeStyle(string key, Type classType, LifestyleType lifestyle);
IWindsorContainer AddComponentLifeStyle(string key, Type serviceType, Type classType, LifestyleType lifestyle);
IWindsorContainer AddComponentLifeStyle<T>(LifestyleType lifestyle);
IWindsorContainer AddComponentLifeStyle<T>(string key, LifestyleType lifestyle);
IWindsorContainer AddComponentLifeStyle<I, T>(LifestyleType lifestyle) where T : class;
IWindsorContainer AddComponentLifeStyle<I, T>(string key, LifestyleType lifestyle) where T : class;
IWindsorContainer AddComponentProperties<I, T>(IDictionary extendedProperties) where T : class;
IWindsorContainer AddComponentProperties<I, T>(string key, IDictionary extendedProperties) where T : class;
IWindsorContainer AddComponentWithProperties(string key, Type classType, IDictionary extendedProperties);
IWindsorContainer AddComponentWithProperties(string key, Type serviceType, Type classType, IDictionary extendedProperties);
IWindsorContainer AddComponentWithProperties<T>(IDictionary extendedProperties);
IWindsorContainer AddComponentWithProperties<T>(string key, IDictionary extendedProperties);
IWindsorContainer AddFacility(string idInConfiguration, IFacility facility);
IWindsorContainer AddFacility<TFacility>(string idInConfiguration) where TFacility : IFacility, new;
IWindsorContainer AddFacility<TFacility>(string idInConfiguration, Action<TFacility> configureFacility) where TFacility : IFacility, new;
object Resolve(string key, IDictionary arguments);
object Resolve(string key, object argumentsAsAnonymousType);
}
}