使用反射把所有服务接口进行注入

      public void ConfigureServices(IServiceCollection services)
        {
            services.AddMvc();

            Assembly asm = Assembly.Load(new AssemblyName("IOCDemo.Services"));
            var serivceTypes= asm.GetTypes().Where(t => typeof(IServiceSupport).IsAssignableFrom(t) &&
            !t.GetTypeInfo().IsAbstract);
            foreach (var serviceType in serivceTypes)
            {
                foreach (var intfType in serviceType.GetInterfaces())
                {
                    services.AddSingleton(intfType, serviceType);
                }
            }
        }
原文地址:https://www.cnblogs.com/qq605490312/p/7802810.html