public UserStoreProxy(IPasswordHasher <ApplicationUser> passwordHasher, IUserDbContext dbContext = null)
        {
            _dbContext      = dbContext ?? new InMemoryUserDb();
            _passwordHasher = passwordHasher;

            // ToDo: ILogging instead of Console.WriteLine
            Console.WriteLine("Initialize UserStoreProxy");
            Console.WriteLine("DbContext:      " + _dbContext.GetType().ToString());
            Console.WriteLine("PasswordHasher: " + _passwordHasher.GetType().ToString());

            // Create Test Users

            //if (_appendTestUsers)
            //{
            //    _appendTestUsers = false;

            //    CreateAsync(
            //        new ApplicationUser()
            //        {
            //            UserName = "******",
            //            PasswordHash = "test1",
            //            EmailConfirmed = true,
            //            Email = "*****@*****.**"
            //        }, CancellationToken.None).Wait();

            //    if (passwordHasher != null)
            //    {
            //        foreach (var userId in _users.Keys)
            //        {
            //            var user = _users[userId];
            //            user.PasswordHash = passwordHasher.HashPassword(user, user.PasswordHash);
            //        }
            //    }
            //}
        }