Ejemplo n.º 1
0
        private static void RegisterTypes(this IServiceCollection services, TypeDescriptionList types)
        {
            foreach (var item in types)
            {
                switch (item.LifeCycle)
                {
                case LifeCycle.PerRequest:
                    services.AddTransient(item.Interface, item.Implementation);
                    break;

                case LifeCycle.SingleInstance:
                    services.AddSingleton(item.Interface, item.Implementation);
                    break;

                case LifeCycle.PerLifeTime:
                    services.AddTransient(item.Interface, item.Implementation);
                    break;

                case LifeCycle.PerDependency:
                    services.AddScoped(item.Interface, item.Implementation);
                    break;

                default:
                    break;
                }
            }
        }
Ejemplo n.º 2
0
        public TypeDescriptionList TypeDescriptions()
        {
            var mappings = new TypeDescriptionList();

            mappings.Add(typeof(IContentProvider), typeof(DefaultContentProvider));
            mappings.Add(typeof(IModelBinderProvider), typeof(DD4TViewModelModelBinder));

            return(mappings);
        }
Ejemplo n.º 3
0
        public TypeDescriptionList TypeDescriptions()
        {
            var list = new TypeDescriptionList();

            list.Add(typeof(IModelBinderProvider), typeof(SitemapItemModelBinder));

            list.Add(typeof(INavigationProvider), typeof(NavigationProvider));
            list.Add(typeof(IContentProvider), typeof(NavigationContentProvider));

            return(list);
        }
Ejemplo n.º 4
0
        public TypeDescriptionList TypeDescriptions()
        {
            var mappings = new TypeDescriptionList();

            mappings.Add(typeof(IPageProvider), typeof(PageProvider));
            mappings.Add(typeof(ILinkProvider), typeof(LinkProvider));
            mappings.Add(typeof(IComponentPresentationProvider), typeof(ComponentPresentationProvider));
            mappings.Add(typeof(IBinaryProvider), typeof(BinaryProvider));

            return(mappings);
        }
Ejemplo n.º 5
0
        private static void RegisterTypes(this ContainerBuilder builder, TypeDescriptionList types)
        {
            foreach (var item in types)
            {
                switch (item.LifeCycle)
                {
                case LifeCycle.PerRequest:
                    builder.RegisterType(item.Implementation)
                    .As(item.Interface)
                    .InstancePerRequest()
                    .PreserveExistingDefaults();
                    break;

                case LifeCycle.SingleInstance:
                    builder.RegisterType(item.Implementation)
                    .As(item.Interface)
                    .SingleInstance()
                    .PreserveExistingDefaults();
                    break;

                case LifeCycle.PerLifeTime:
                    builder.RegisterType(item.Implementation)
                    .As(item.Interface)
                    .InstancePerLifetimeScope()
                    .PreserveExistingDefaults();
                    break;

                case LifeCycle.PerDependency:
                    builder.RegisterType(item.Implementation)
                    .As(item.Interface)
                    .InstancePerDependency()
                    .PreserveExistingDefaults();
                    break;

                default:
                    break;
                }
            }
        }