private static void InstanceSelfRegister(IServiceContext services, DependencyRegisterDescriptor d)
        {
            var lifetime = d.LifetimeType.ToAspectCoreLifetime();

            switch (lifetime)
            {
            case Lifetime.Singleton:
                services.AddInstance(d.InstanceOfImplementation);
                break;

            default:
                throw new InvalidOperationException("Invalid operation for scoped or Transient mode.");
            }
        }
        private static void TypeToInstanceRegister(IServiceCollection services, DependencyRegisterDescriptor d)
        {
            var lifetime = d.LifetimeType.ToMsLifetime();

            switch (lifetime)
            {
            case ServiceLifetime.Singleton:
                services.AddSingleton(d.ServiceType, d.InstanceOfImplementation);
                break;

            default:
                throw new InvalidOperationException("Invalid operation for scoped or Transient mode.");
            }
        }
Example #3
0
        private static void TypeToInstanceRegister(ContainerBuilder services, DependencyRegisterDescriptor d)
        {
            var builder = services.RegisterInstance(d.InstanceOfImplementation).As(d.ServiceType);

            switch (d.LifetimeType)
            {
            case DependencyLifetimeType.Scoped:
                builder.InstancePerLifetimeScope();
                break;

            case DependencyLifetimeType.Singleton:
                builder.SingleInstance();
                break;

            case DependencyLifetimeType.Transient:
                builder.InstancePerDependency();
                break;

            default:
                builder.InstancePerDependency();
                break;
            }
        }
        private static void TypeToTypeRegister(IServiceCollection services, DependencyRegisterDescriptor d)
        {
            var lifetime = d.LifetimeType.ToMsLifetime();

            switch (lifetime)
            {
            case ServiceLifetime.Scoped:
                services.AddScoped(d.ServiceType, d.ImplementationType);
                break;

            case ServiceLifetime.Singleton:
                services.AddSingleton(d.ServiceType, d.ImplementationType);
                break;

            case ServiceLifetime.Transient:
                services.AddTransient(d.ServiceType, d.ImplementationType);
                break;

            default:
                services.AddTransient(d.ServiceType, d.ImplementationType);
                break;
            }
        }
        private static void InstanceSelfFuncRegister(IServiceCollection services, DependencyRegisterDescriptor d)
        {
            var lifetime = d.LifetimeType.ToMsLifetime();

            switch (lifetime)
            {
            case ServiceLifetime.Scoped:
                services.AddScoped(p => d.InstanceFuncForImplementation());
                break;

            case ServiceLifetime.Singleton:
                services.AddSingleton(p => d.InstanceFuncForImplementation());
                break;

            case ServiceLifetime.Transient:
                services.AddTransient(p => d.InstanceFuncForImplementation());
                break;

            default:
                services.AddTransient(p => d.InstanceFuncForImplementation());
                break;
            }
        }
        private static void InstanceSelfFuncRegister(IServiceContext services, DependencyRegisterDescriptor d)
        {
            var lifetime = d.LifetimeType.ToAspectCoreLifetime();

            switch (lifetime)
            {
            case Lifetime.Scoped:
                services.AddDelegate(r => d.InstanceFuncForImplementation(), Lifetime.Scoped);
                break;

            case Lifetime.Singleton:
                services.AddDelegate(r => d.InstanceFuncForImplementation(), Lifetime.Singleton);
                break;

            case Lifetime.Transient:
                services.AddDelegate(r => d.InstanceFuncForImplementation());
                break;

            default:
                services.AddDelegate(r => d.InstanceFuncForImplementation());
                break;
            }
        }
Example #7
0
        private static void ResolvedInstanceSelfFuncRegister(ContainerBuilder services, DependencyRegisterDescriptor d)
        {
            var builder = services.Register(context => d.ResolveFuncForImplementation(context.ToAbstract()));

            switch (d.LifetimeType)
            {
            case DependencyLifetimeType.Scoped:
                builder.InstancePerLifetimeScope();
                break;

            case DependencyLifetimeType.Singleton:
                builder.SingleInstance();
                break;

            case DependencyLifetimeType.Transient:
                builder.InstancePerDependency();
                break;

            default:
                builder.InstancePerDependency();
                break;
            }
        }
        private static void TypeSelfRegister(IServiceContext services, DependencyRegisterDescriptor d)
        {
            var lifetime = d.LifetimeType.ToAspectCoreLifetime();

            services.AddType(d.ImplementationTypeSelf, lifetime);
        }
        private static void TypeToInstanceFuncRegister(IServiceContext services, DependencyRegisterDescriptor d)
        {
            var lifetime = d.LifetimeType.ToAspectCoreLifetime();

            services.AddDelegate(d.ServiceType, r => d.InstanceFuncForImplementation(), lifetime);
        }