public void RegistreUser(IUser user) { var isUserChecked = this.IsUserInformationValidate(user); CheckAndCreatTableInBase(); var userHashedPassword = HashingSystem.Hash(user.Password); if (isUserChecked) { try { var insertUserQuery = "INSERT INTO users(FirstName, LastName, Resident, " + "PrivateId, RegistrationIp, Language_, " + "Email, Password_, Mobile, DateOfBirth," + "RegistrationDate, Country, Region," + "City, Address1, Address2)" + "VALUES" + $"('{user.FirstName}','{user.LastName}','{user.Resident}'," + $"'{user.PrivateID}','{user.RegistrarionIP}','{user.Language}'," + $"'{user.Email}','{userHashedPassword}','{user.Mobile}','{user.DateOfBirth}'," + $"'{user.RegistrationDate}','{user.UserAddress.Country}','{user.UserAddress.Region}'," + $"'{user.UserAddress.City}','{user.UserAddress.Addres1}','{user.UserAddress.Address2}');"; var connection = new MySqlConnection(_connectionString); var myCommand = new MySqlCommand(insertUserQuery, connection); connection.Open(); var reader = myCommand.ExecuteReaderAsync(); connection.Close(); } catch (Exception e) { var exeption = e.Message; } } else { throw new ArgumentNullException("User is null or user's some parameter is null or empty"); } }