예제 #1
0
        public static void ConfigureContainer()
        {
            var container = new ServiceContainer();

            container.RegisterApiControllers();
            container.EnablePerWebRequestScope();
            container.EnableWebApi(GlobalConfiguration.Configuration);

            var mi = ReflectiveEnumerator.GetGenericMethods <ServiceContainer>(nameof(ServiceContainer.Register))
                     .Where(x => x.GetParameters().Length == 0 && x.GetGenericArguments().Length == 1).ToList();

            foreach (var type in ReflectiveEnumerator.GetClassesWithInterface <IDependency>(false))
            {
                mi.First().MakeGenericMethod(type).Invoke(container, null);
            }
        }