internal static IRegistrationBuilder <TLimit, GeneratedFactoryActivatorData, SingleRegistrationStyle> RegisterGeneratedFactory <TLimit>(ContainerBuilder builder, Type delegateType, Service service) { GeneratedFactoryActivatorData activatorData = new GeneratedFactoryActivatorData(delegateType, service); RegistrationBuilder <TLimit, GeneratedFactoryActivatorData, SingleRegistrationStyle> rb = new RegistrationBuilder <TLimit, GeneratedFactoryActivatorData, SingleRegistrationStyle>(new TypedService(delegateType), activatorData, new SingleRegistrationStyle()); builder.RegisterCallback(delegate(IComponentRegistry cr) { RegistrationBuilder.RegisterSingleComponent <TLimit, GeneratedFactoryActivatorData, SingleRegistrationStyle>(cr, rb); }); return(rb.InstancePerLifetimeScope()); }
RegisterGeneratedFactory <TLimit>(ContainerBuilder builder, Type delegateType, Service service) { var activatorData = new GeneratedFactoryActivatorData(delegateType, service); var rb = new RegistrationBuilder <TLimit, GeneratedFactoryActivatorData, SingleRegistrationStyle>( new TypedService(delegateType), activatorData, new SingleRegistrationStyle()); builder.RegisterCallback(cr => RegistrationBuilder.RegisterSingleComponent(cr, rb)); return(rb.InstancePerLifetimeScope()); }