Example #1
0
        public static IServiceCollection AddCommanders(this IServiceCollection serviceCollection, IDefaultCommanderProvider provider, Assembly[] assemblies)
        {
            foreach (var a in assemblies)
            {
                var types = a.GetTypes()
                            .Where(t => t.IsCommander())
                ;

                serviceCollection.AddCommanders(provider, types.ToArray());
            }

            return(serviceCollection);
        }
Example #2
0
        public static IServiceCollection AddCommanders(this IServiceCollection serviceCollection, IDefaultCommanderProvider provider, Type[] commanderTypes)
        {
            serviceCollection.AddSingleton(provider);

            foreach (var type in commanderTypes.Where(t => !t.IsAbstract & t.IsCommander()))
            {
                Debug.WriteLine($"Register commander '{type.Name}'.");
                serviceCollection.AddTransient(type, type);
            }

            return(serviceCollection);
        }
Example #3
0
 public static IServiceCollection AddCommanders(this IServiceCollection serviceCollection, IDefaultCommanderProvider provider, Assembly assembly)
 {
     return(serviceCollection.AddCommanders(provider, new[] { assembly }));
 }