Add the <seecref="T:LightweightIocContainer.Interfaces.Registrations.IRegistrationBase"/> to the the <seecref="T:LightweightIocContainer.Interfaces.IIocContainer"/>
Register an Interface with a Type that implements it/>
</summary>
</summary>
<paramname="registration">The given <seecref="T:LightweightIocContainer.Interfaces.Registrations.IRegistrationBase"/></param>
<typeparamname="TInterface">The Interface to register</typeparam>
<exceptioncref="T:LightweightIocContainer.Exceptions.MultipleRegistrationException">The <seecref="T:System.Type"/> is already registered in this <seecref="T:LightweightIocContainer.Interfaces.IIocContainer"/></exception>
<typeparamname="TImplementation">The Type that implements the interface</typeparam>
<paramname="lifestyle">The <seecref="T:LightweightIocContainer.Lifestyle"/> for this <seecref="T:LightweightIocContainer.Interfaces.Registrations.IDefaultRegistration`1"/></param>
Register a <seecref="T:System.Type"/> without an interface/>
</summary>
<typeparamname="TImplementation">The <seecref="T:System.Type"/> to register</typeparam>
<paramname="lifestyle">The <seecref="T:LightweightIocContainer.Lifestyle"/> for this <seecref="T:LightweightIocContainer.Interfaces.Registrations.IDefaultRegistration`1"/></param>
Register an Interface with a Type that implements it/>
</summary>
<paramname="tInterface">The Interface to register</param>
<paramname="tImplementation">The Type that implements the interface</param>
<paramname="lifestyle">The <seecref="T:LightweightIocContainer.Lifestyle"/> for this <seecref="T:LightweightIocContainer.Interfaces.Registrations.IDefaultRegistration`1"/></param>
Register a <seecref="T:System.Type"/> without an interface/>
</summary>
<paramname="tImplementation">The <seecref="T:System.Type"/> to register</param>
<paramname="lifestyle">The <seecref="T:LightweightIocContainer.Lifestyle"/> for this <seecref="T:LightweightIocContainer.Interfaces.Registrations.IDefaultRegistration`1"/></param>
The main container that carries all the <seecref="T:LightweightIocContainer.Interfaces.Registrations.IRegistrationBase"/>s and can resolve all the types you'll ever want
The main container that carries all the <seecref="T:LightweightIocContainer.Interfaces.Registrations.IRegistrationBase"/>s and can resolve all the types you'll ever want
Register an Interface with a Type that implements it/>
</summary>
<typeparamname="TInterface">The Interface to register</typeparam>
<typeparamname="TImplementation">The Type that implements the interface</typeparam>
<paramname="lifestyle">The <seecref="T:LightweightIocContainer.Lifestyle"/> for this <seecref="T:LightweightIocContainer.Interfaces.Registrations.IDefaultRegistration`1"/></param>
Register a <seecref="T:System.Type"/> without an interface/>
</summary>
<typeparamname="TImplementation">The <seecref="T:System.Type"/> to register</typeparam>
<paramname="lifestyle">The <seecref="T:LightweightIocContainer.Lifestyle"/> for this <seecref="T:LightweightIocContainer.Interfaces.Registrations.IDefaultRegistration`1"/></param>
Register an Interface with a Type that implements it/>
</summary>
<paramname="tInterface">The Interface to register</param>
<paramname="tImplementation">The Type that implements the interface</param>
<paramname="lifestyle">The <seecref="T:LightweightIocContainer.Lifestyle"/> for this <seecref="T:LightweightIocContainer.Interfaces.Registrations.IDefaultRegistration`1"/></param>
Register a <seecref="T:System.Type"/> without an interface/>
</summary>
<paramname="tImplementation">The <seecref="T:System.Type"/> to register</param>
<paramname="lifestyle">The <seecref="T:LightweightIocContainer.Lifestyle"/> for this <seecref="T:LightweightIocContainer.Interfaces.Registrations.IDefaultRegistration`1"/></param>
Add the <seecref="T:LightweightIocContainer.Interfaces.Registrations.IRegistrationBase"/> to the the <seecref="T:LightweightIocContainer.IocContainer"/>
Add the <seecref="T:LightweightIocContainer.Interfaces.Registrations.IRegistrationBase"/> to the the <seecref="T:LightweightIocContainer.IocContainer"/>
@ -604,20 +718,18 @@
<paramname="tScope">The Type of the multiton scope</param>
<paramname="tScope">The Type of the multiton scope</param>
<returns>A new created <seecref="T:LightweightIocContainer.Interfaces.Registrations.IMultitonRegistration`1"/> with the given parameters</returns>
<returns>A new created <seecref="T:LightweightIocContainer.Interfaces.Registrations.IMultitonRegistration`1"/> with the given parameters</returns>
Register an Interface as an abstract typed factory and create a <seecref="T:LightweightIocContainer.Interfaces.Registrations.ITypedFactoryRegistration`1"/>
Register an Interface as an abstract typed factory and create a <seecref="T:LightweightIocContainer.Interfaces.Registrations.ITypedFactoryRegistration`1"/>
</summary>
</summary>
<typeparamname="TFactory">The abstract typed factory to register</typeparam>
<typeparamname="TFactory">The abstract typed factory to register</typeparam>
<paramname="container">The current <seecref="T:LightweightIocContainer.Interfaces.IIocContainer"/></param>
<returns>A new created <seecref="T:LightweightIocContainer.Interfaces.Registrations.ITypedFactoryRegistration`1"/> with the given parameters</returns>
<returns>A new created <seecref="T:LightweightIocContainer.Interfaces.Registrations.ITypedFactoryRegistration`1"/> with the given parameters</returns>
Register an Interface as an abstract typed factory and create a <seecref="T:LightweightIocContainer.Interfaces.Registrations.ITypedFactoryRegistration`1"/>
Register an Interface as an abstract typed factory and create a <seecref="T:LightweightIocContainer.Interfaces.Registrations.ITypedFactoryRegistration`1"/>
</summary>
</summary>
<paramname="tFactory">The abstract typed factory to register</param>
<paramname="tFactory">The abstract typed factory to register</param>
<paramname="container">The current <seecref="T:LightweightIocContainer.Interfaces.IIocContainer"/></param>
<returns>A new created <seecref="T:LightweightIocContainer.Interfaces.Registrations.ITypedFactoryRegistration`1"/> with the given parameters</returns>
<returns>A new created <seecref="T:LightweightIocContainer.Interfaces.Registrations.ITypedFactoryRegistration`1"/> with the given parameters</returns>
/// Register an Interface as an abstract typed factory and create a <see cref="ITypedFactoryRegistration{TFactory}"/>
/// Register an Interface as an abstract typed factory and create a <see cref="ITypedFactoryRegistration{TFactory}"/>
/// </summary>
/// </summary>
/// <typeparam name="TFactory">The abstract typed factory to register</typeparam>
/// <typeparam name="TFactory">The abstract typed factory to register</typeparam>
/// <param name="container">The current <see cref="IIocContainer"/></param>
/// <returns>A new created <see cref="ITypedFactoryRegistration{TFactory}"/> with the given parameters</returns>
/// <returns>A new created <see cref="ITypedFactoryRegistration{TFactory}"/> with the given parameters</returns>
publicstaticITypedFactoryRegistration<TFactory>RegisterFactory<TFactory>(IIocContainercontainer)//TODO: Find a nicer way to inject the container into `TypedFactoryRegistration`