/// <summary>
        /// Registers user in the system
        /// </summary>
        /// <param name="registerUser"></param>
        /// <returns></returns>
        public async Task<BooleanResponse> UserRegistration(RegisterUser registerUser)
        {
            var response = new BooleanResponse();
            try
            {
                
                var user = new ApplicationUser()
                {
                    City = registerUser.City,
                    CountryId = registerUser.CountryId,
                    Email = registerUser.Email,
                    FirstName = registerUser.FirstName,
                    LastName = registerUser.LastName,

                    State = registerUser.State,
                    UserName = registerUser.Email
                };

                var result = await UserManager.CreateAsync(user, registerUser.Password);

                if (result.Succeeded)
                {
                    user = UserManager.FindByName(registerUser.Email);
                    var identity = await user.GenerateUserIdentityAsync(UserManager);
                    AuthManager.SignIn(new AuthenticationProperties {IsPersistent = true}, identity);
                    response.Result = true;
                }
                else
                {
                    response.Errors.AddRange(result.Errors.Select(s => new Error() { Message = s}));
                }
            }
            catch (Exception ex)
            {
                response.SetError(ex);
            }

            return response;
        }
 public async Task<BooleanResponse> UserRegistration(RegisterUser user)
 {
     var manager =
         StatWinner.Common.DependencyInjection.DependencyContainer.GetInstance<IUserAccountManagement>();
     return await manager.UserRegistration(user);
 }
 public async Task<BooleanResponse> UserRegistration(RegisterUser registerUser)
 {
     var accountManagement = new UserAccountManagement();
     var registerUserResult = await accountManagement.UserRegistration(registerUser);
     return registerUserResult;
 }