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");
            }
        }