protected override IDependencyResolver NewDependencyResolver(object diContainer, ActorSystem system)
        {
            var builder            = ToBuilder(diContainer);
            var serviceProvider    = builder.BuildServiceProvider();
            var dependencyResolver = new ServiceProviderDependencyResolver(serviceProvider, system);

            return(dependencyResolver);
        }
        public void Init()
        {
            var services = new ServiceCollection();

            ConfigureUCommerceServices(services);
            ConfigureControllerServices(services);
            ConfigureAcceleratorServices(services);

            var resolver = new ServiceProviderDependencyResolver(services.BuildServiceProvider());

            DependencyResolver.SetResolver(resolver);

            BundleConfig.RegisterBundles(BundleTable.Bundles);
        }
        private static async Task Main(string[] args)
        {
            using (var system = ActorSystem.Create("Sample"))
            {
                var resolver  = new ServiceProviderDependencyResolver(CompositeRoot(), system);
                var rootActor = system.ActorOf(system.DI().Props <RootActor>(), "RootActor");

                while (true)
                {
                    Console.ReadLine();

                    rootActor.Tell(new Start {
                    });

                    var root = await system.ActorSelection("/").ResolveOne(1000.Milliseconds());

                    PrintChildrenPath(root as ActorRefWithCell);
                }
            }
        }