public override void Load() { base.Load(); Dispose(); AvailableTypes = ActiveAssemblies.SelectMany(i => i.GetTypesOfInterface <T>()).ToList(); ActivePlugins = LoadPlugins(); }
private List <Type> GetAvailableTypes() => ActiveAssemblies .SelectMany(i => i.Value.GetTypesOfInterface <T>()) .Where(TypeExtensions.HasParameterlessConstructor) .ToList();