/// <summary> /// Registers the specified module. /// </summary> /// <param name="compositionRoot">The module.</param> public void Register(IInjectionCompositionRoot compositionRoot) { if (compositionRoot != null) { compositionRoot.Register(this); } }
/// <summary> /// Registers the specified assembly. /// </summary> /// <param name="assembly">The assembly.</param> public void Register(System.Reflection.Assembly assembly) { if (assembly != null) { Type[] types = assembly.GetTypes(); foreach (var t in types.Where(t => t.GetInterface(typeof(IInjectionCompositionRoot).Name) == typeof(IInjectionCompositionRoot))) { IInjectionCompositionRoot compositionRoot = assembly.CreateInstance(t.FullName) as IInjectionCompositionRoot; if (compositionRoot != null) { compositionRoot.Register(this); } } } }