internal static void LoadModules(IApplicationModuleManager container, ApplicationConfiguration config) { if (config == null) { return; } if (container == null) { return; } foreach (ModuleDefinition moduleDef in config.ModulesConfiguration.Modules) { Type moduleType = Type.GetType(moduleDef.Type, false, true); if (moduleType == null) { throw new InvalidOperationException( string.Format("Cannot load type from string \"{0}\".", moduleDef.Type)); } if (!typeof(IApplicationModule).IsAssignableFrom(moduleType)) { throw new InvalidCastException(string.Format("Type {0} does not implements type {1}.", moduleType, typeof(IApplicationModule))); } IApplicationModule module = (IApplicationModule)Activator.CreateInstance(moduleType); container.Load(module); } }
internal static void LoadModules(IApplicationModuleManager container, ApplicationConfiguration config) { if (config == null) return; if (container == null) return; foreach (ModuleDefinition moduleDef in config.ModulesConfiguration.Modules) { Type moduleType = Type.GetType(moduleDef.Type, false, true); if (moduleType == null) throw new InvalidOperationException( string.Format("Cannot load type from string \"{0}\".", moduleDef.Type)); if (!typeof(IApplicationModule).IsAssignableFrom(moduleType)) throw new InvalidCastException(string.Format("Type {0} does not implements type {1}.", moduleType, typeof(IApplicationModule))); IApplicationModule module = (IApplicationModule)Activator.CreateInstance(moduleType); container.Load(module); } }
public override void Init() { IApplicationModuleManager manager = IoC.Container.Resolve <IApplicationModuleManager>(); manager.Execute(this); }