public virtual void UnregisterModule(ModuleIdentity moduleIdentity) { var t = GetDependent(moduleIdentity); var moduleIdentities = t as ModuleIdentity[] ?? t.ToArray(); if (moduleIdentities.Any()) { throw new ModuleIsRequiredException(moduleIdentity, moduleIdentities); } _modulesRepository.RemoveModule(moduleIdentity); }