예제 #1
0
        /// <summary>
        /// Guarda un nuevo jugador en la base de datos
        /// </summary>
        /// <param name="nuevoJugador">Nuevo jugador a guardar</param>
        /// <exception cref="DbUpdateException"></exception>
        public void GuardarJugador(Dominio.Jugador nuevoJugador)
        {
            Jugador entidadJugador = new Jugador
            {
                Nickname          = nuevoJugador.Nickname,
                CorreoElectronico = nuevoJugador.CorreoElectronico,
                Contraseña        = AdministradorHash.GenerarHash(nuevoJugador.Contraseña),
                Nivel             = 1,
                Experiencia       = 0,
                PartidasGanadas   = 0,
                PartidasJugadas   = 0,
                PuntajeTotal      = 0
            };

            baseDeDatos.Jugador.Add(entidadJugador);

            try
            {
                baseDeDatos.SaveChanges();
            }
            catch (DbUpdateException)
            {
                throw new DbUpdateException("Error al agregar nuevo jugador");
            }
        }
예제 #2
0
        /// <summary>
        /// Verifica si la contraseña del Jugador es correcta.
        /// </summary>
        /// <param name="nickname">Nickname del Jugador a buscar.</param>
        /// <param name="contraseña">Contraseña del Jugador.</param>
        /// <returns>
        /// true si la contraseña es correcta, false si no lo es.
        /// </returns>
        public bool EsContraseñaCorrecta(string nickname, string contraseña)
        {
            bool esCorrecta = false;

            var jugadorBuscado = baseDeDatos.Jugador.Where(jugador => jugador.Nickname.Equals(nickname))
                                 .FirstOrDefault <Jugador>();

            if (AdministradorHash.CompararHash(contraseña, jugadorBuscado.Contraseña))
            {
                esCorrecta = true;
            }

            return(esCorrecta);
        }
예제 #3
0
        /// <summary>
        /// Actualiza la contraseña de un Jugador.
        /// </summary>
        /// <param name="jugadorActualizado">Jugador que cambia su contraseña</param>
        /// <param name="contrasenia">La nueva contraseña</param>
        public void ActualizarContrasenia(Dominio.Jugador jugadorActualizado, string contrasenia)
        {
            var jugadorBuscado = baseDeDatos.Jugador.Where(jugador => jugador.CorreoElectronico.Equals(jugadorActualizado.CorreoElectronico)).FirstOrDefault <Jugador>();

            jugadorBuscado.Contraseña = AdministradorHash.GenerarHash(contrasenia);

            try
            {
                baseDeDatos.SaveChanges();
            }
            catch (DbUpdateException)
            {
                throw new DbUpdateException("Error al agregar nuevo jugador");
            }
        }