public ActionInvoker( //ITypeActivatorCache typeActivatorCache, ObjectMethodExecutorCache cache /*, * IEnumerable<IControllerPropertyActivator> propertyActivators*/) { //_typeActivatorCache = typeActivatorCache ?? throw new ArgumentNullException(nameof(typeActivatorCache)); //_propertyActivators = propertyActivators.ToArray(); _cache = cache; var assemblies = DefaultAssemblyPartDiscoveryProvider.DiscoverAssemblyParts(Globals.EntryPointAssembly); _allControllers = new List <TypeInfo>(); foreach (var assembly in assemblies) { var controllerTypes = assembly.DefinedTypes.Where(t => IsController(t)).ToList(); if (controllerTypes.Count > 0) { _allControllers.AddRange(controllerTypes); } } }