public ViewModelLocator()
        {
            var appConfig = new ConfigurationBuilder()
                            .SetBasePath(Directory.GetCurrentDirectory())
                            .AddJsonFile("appsettings.json")
                            .Build();

            Log.Logger = new LoggerConfiguration()
                         .ReadFrom.Configuration(appConfig).CreateLogger();

            var blizzApiSettings = new BlizzApiSettingsModel();

            appConfig.GetSection("BlizzApiSettings").Bind(blizzApiSettings);

            var container = new ContainerBuilder();

            container.RegisterInstance(new SettingsService(blizzApiSettings)).As <ISettingsService>();

            container.RegisterInstance(new MainViewModel());
            container.RegisterType <ProffesionViewModel>();
            container.RegisterType <ProffesionSkillTierViewModel>();
            container.RegisterType <ProffesionRecipesViewModel>();

            container.RegisterType <TokenService>().As <ITokenService>();
            container.RegisterType <BlizzApiService>().As <IBlizzApiService>();
            container.RegisterType <AuctionService>().As <IAuctionService>().SingleInstance();

            var mapConfig = new MapperConfiguration(cfg =>
            {
                cfg.AddProfile <MappingProfile>();
            });

            container.RegisterInstance(mapConfig.CreateMapper()).As <IMapper>();

            SetupNavigation(container);
            var builder = container.Build();
            var locator = new AutofacServiceLocator(builder);

            ServiceLocator.SetLocatorProvider(() => locator);
        }
 public SettingsService(BlizzApiSettingsModel blizzApiSettings)
 {
     BlizzApiSettings = blizzApiSettings;
 }