public static void Register(IWindsorContainer container, MultipleBinding binding)
        {
            var registration = AllTypes.From(binding.Services).Pick();

            if (binding.BindTo.Count > 0)
                registration = registration.WithServices(binding.BindTo);

            registration = ApplyLifecycle(registration, binding.Lifecycle);

            container.Register(registration);
        }
        public static void Register(global::Autofac.IContainer container, MultipleBinding binding)
        {
            var builder = new ContainerBuilder();

            var registration = builder.RegisterTypes(binding.Services.ToArray());

            if (binding.BindTo.Count > 0)
                registration = registration.As(binding.BindTo.ToArray());

            ApplyLifestyleMultiple(registration, binding.Lifestyle);

            builder.Update(container);
        }
Exemple #3
0
        public static void Register(IWindsorContainer container, MultipleBinding binding)
        {
            var registration = Classes.From(binding.Services).Pick();

            if (binding.BindTo.Count > 0)
            {
                registration = registration.WithServices(binding.BindTo);
            }

            registration = ApplyLifestyle(registration, binding.Lifestyle);

            container.Register(registration);
        }
        public static void Register(global::StructureMap.IContainer container, MultipleBinding binding)
        {
            container.Configure(ce =>
                {
                    foreach (var implementation in binding.Services.Where(t => !t.IsInterface && !t.IsAbstract))
                    {
                        var tempImplementation = implementation;
                        binding.BindTo.ForEach(t => ApplyLifestyleSingle(ce.For(t), binding.Lifestyle).Add(tempImplementation));

                        if (binding.BindTo.Count == 0)
                        {
                            ApplyLifestyleSingle(ce.For(implementation), binding.Lifestyle).Add(implementation);
                        }
                    }
                });
        }
        public static void Register(global::StructureMap.IContainer container, MultipleBinding binding)
        {
            container.Configure(ce =>
            {
                foreach (var implementation in binding.Services.Where(t => !t.IsInterface && !t.IsAbstract))
                {
                    var tempImplementation = implementation;
                    binding.BindTo.ForEach(t => ApplyLifestyleSingle(ce.For(t), binding.Lifestyle).Add(tempImplementation));

                    if (binding.BindTo.Count == 0)
                    {
                        ApplyLifestyleSingle(ce.For(implementation), binding.Lifestyle).Add(implementation);
                    }
                }
            });
        }
Exemple #6
0
 public MultipleBindingSyntax(IEnumerable <Type> services)
 {
     _binding = new MultipleBinding(services);
 }