コード例 #1
0
        /// <summary>
        /// Obtiene el usuario con ese mail y contrasenia
        /// </summary>
        /// <parameters>Email y contrasenia</parameters>
        /// <returns>Usuario</returns>
        public Usuario obtenerUsuarioPorEmailyContrasenia(string email, string contrasenia)
        {
            SqlConnection con = new SqlConnection(cadenaDeConexion);
            SqlCommand    cmd = new SqlCommand();
            SqlDataReader dr;
            Usuario       respuesta = null;

            try
            {
                DAOTipoUsuario gestorTipoUsuario = new DAOTipoUsuario();
                if (con.State == ConnectionState.Closed)
                {
                    con.Open();
                }
                cmd.Connection = con;
                string sql = @"SELECT * 
                                FROM Usuarios
                                WHERE email = @email AND contrasenia = @contrasenia";
                cmd.Parameters.Clear();
                cmd.Parameters.Add(new SqlParameter("@email", email));
                cmd.Parameters.Add(new SqlParameter("@contrasenia", contrasenia));
                cmd.CommandText = sql;
                dr = cmd.ExecuteReader();
                while (dr.Read())
                {
                    respuesta = new Usuario()
                    {
                        nombre      = dr["nombre"].ToString(),
                        apellido    = dr["apellido"].ToString(),
                        email       = dr["email"].ToString(),
                        contrasenia = dr["contrasenia"].ToString(),
                        idUsuario   = dr.GetInt32(dr.GetOrdinal("idUsuario")),
                        tipoUsuario = gestorTipoUsuario.obtenerTipoUsuarioPorId(Int32.Parse(dr["idTipoUsuario"].ToString())),
                        esActivo    = bool.Parse(dr["esActivo"].ToString())
                    };
                }
                if (dr != null)
                {
                    dr.Close();
                }
                return(respuesta);
            }
            catch (Exception ex)
            {
                throw new Exception("Ocurrio un error al obtener el usuario" + ex.Message);
            }
            finally
            {
                if (con != null && con.State == ConnectionState.Open)
                {
                    con.Close();
                }
            }
        }
コード例 #2
0
        /// <summary>
        /// Busca un Usuario con por un email determinado en la base de datos.
        /// autor: Pau Pedrosa y Flor Rojas
        /// </summary>
        /// <param name="idUsuario">Email del Usuario que se quiere buscar </param>
        /// <returns>Un objeto Usuario, o null si no encuentra el Usuario.</returns>
        public Usuario obtenerUsuarioPorEmail(string email)
        {
            SqlConnection con = new SqlConnection(cadenaDeConexion);
            SqlCommand    cmd = new SqlCommand();
            SqlDataReader dr;
            Usuario       respuesta = null;

            try
            {
                if (con.State == ConnectionState.Closed)
                {
                    con.Open();
                }
                cmd.Connection = con;
                string sql = @"SELECT *
                                FROM Usuarios
                                WHERE email = @email";
                cmd.Parameters.Clear();
                cmd.Parameters.AddWithValue("@email", email);
                cmd.CommandText = sql;
                dr = cmd.ExecuteReader();
                DAOTipoUsuario gestorTipoUsuario = new DAOTipoUsuario();
                while (dr.Read())
                {
                    respuesta = new Usuario()
                    {
                        idUsuario   = Int32.Parse(dr["idUsuario"].ToString()),
                        nombre      = dr["nombre"].ToString(),
                        apellido    = dr["apellido"].ToString(),
                        email       = dr["email"].ToString(),
                        codigo      = dr["codigo"].ToString(),
                        esActivo    = bool.Parse(dr["esActivo"].ToString()),
                        tipoUsuario = gestorTipoUsuario.obtenerTipoUsuarioPorId(Int32.Parse(dr["idTipoUsuario"].ToString()))
                    };
                }
                if (dr != null)
                {
                    dr.Close();
                }
                return(respuesta);
            }
            catch (Exception ex)
            {
                throw new Exception("Error al intentar recuperar el campeonato: " + ex.Message);
            }
            finally
            {
                if (con != null && con.State == ConnectionState.Open)
                {
                    con.Close();
                }
            }
        }