Exemplo n.º 1
0
        /// <inheritdoc />
        protected override void Load(ContainerBuilder builder)
        {
            base.Load(builder);
            var mappings = ServiceTypes.GetMappings(IocTypes.Select(a => a.Assembly).ToArray());

            foreach (var mapping in mappings)
            {
                var registration = builder.RegisterType(mapping.Implementation);
                foreach (var service in mapping.Services)
                {
                    registration.As(service);
                }
                if (mapping.SingleInstance)
                {
                    registration.SingleInstance();
                }
                else
                {
                    registration.InstancePerDependency();
                }
            }
        }