Пример #1
0
        /// <summary>
        /// create a user in the database
        /// </summary>
        /// <param name="user">user Class</param>
        /// <param name="hashGenerator">used to hash the password</param>
        /// <param name="generatedToken"> used to generate a valid token</param>
        public void Create(User user, HashGenerator hashGenerator, string generatedToken)
        {
            _connection.Open();
            MySqlCommand cmd = new MySqlCommand
            {
                Connection  = _connection,
                CommandText =
                    "INSERT INTO users (login,password) " +
                    "VALUES (@login,@password)"
            };

            cmd.Prepare();
            cmd.Parameters.AddWithValue("@login", user.Login);
            cmd.Parameters.AddWithValue("@password", hashGenerator.GenerateSHA512Hash(user.Password));
            cmd.ExecuteNonQuery();
            _connection.Close();
            UpdateToken(user, generatedToken);
        }