/// <summary>
        /// Obtiene una lista genérica del objeto Equipo
        /// autor: Pau Pedrosa
        /// </summary>
        /// <param name="idTorneo">Id del torneo</param>
        /// <returns>Lista genérica del objeto Equipo</returns>
        public List <Equipo> obtenerEquiposDeUnTorneo(int idTorneo)
        {
            SqlConnection con = new SqlConnection(cadenaDeConexion);
            SqlCommand    cmd = new SqlCommand();
            SqlDataReader dr;
            List <Equipo> respuesta = new List <Equipo>();
            Equipo        equipo    = null;

            try
            {
                if (con.State == ConnectionState.Closed)
                {
                    con.Open();
                }
                cmd.Connection = con;
                string sql = @"SELECT * 
                                FROM Equipos
                                WHERE idTorneo = @idTorneo
                                ORDER BY idEquipo DESC";
                cmd.Parameters.Clear();
                cmd.Parameters.Add(new SqlParameter("@idTorneo", idTorneo));
                cmd.CommandText = sql;
                dr = cmd.ExecuteReader();
                DAODelegado daoDelegado = new DAODelegado();
                DAOTorneo   daoTorneo   = new DAOTorneo();
                while (dr.Read())
                {
                    equipo = new Equipo()
                    {
                        idEquipo = Int32.Parse(dr["idEquipo"].ToString()),
                        nombre   = dr["nombre"].ToString(),
                        colorCamisetaPrimario   = dr["colorCamisetaPrimario"].ToString(),
                        colorCamisetaSecundario = dr["colorCamisetaSecundario"].ToString(),
                        directorTecnico         = dr["directorTecnico"].ToString(),
                        delegadoPrincipal       = daoDelegado.obtenerDelegadoPorId(Int32.Parse(dr["idDelegadoPrincipal"].ToString())),
                        delegadoOpcional        = daoDelegado.obtenerDelegadoPorId(Int32.Parse(dr["idDelegadoPrincipal"].ToString())),
                    };
                    respuesta.Add(equipo);
                }
                if (dr != null)
                {
                    dr.Close();
                }
                return(respuesta);
            }
            catch (Exception ex)
            {
                throw new Exception("Ocurrió un problema al cargar los datos: " + ex.Message);
            }
            finally
            {
                if (con != null && con.State == ConnectionState.Open)
                {
                    con.Close();
                }
            }
        }
        /// <summary>
        /// Obtiene equipo por id
        /// autor: Pau Pedrosa
        /// </summary>
        /// <param name="idEquipo">id del equipo</param>
        /// <returns>Objeto Equipo</returns>
        public Equipo obtenerEquipoPorId(int idEquipo)
        {
            SqlConnection con = new SqlConnection(cadenaDeConexion);
            SqlCommand    cmd = new SqlCommand();
            SqlDataReader dr;
            Equipo        respuesta = null;

            try
            {
                if (con.State == ConnectionState.Closed)
                {
                    con.Open();
                }
                cmd.Connection = con;
                string sql = @"SELECT *
                                FROM Equipos
                                WHERE idEquipo = @idEquipo";
                cmd.Parameters.Clear();
                cmd.Parameters.AddWithValue("@idEquipo", idEquipo);
                cmd.CommandText = sql;
                DAODelegado daoDelegado = new DAODelegado();
                DAOJugador  daoJugador  = new DAOJugador();
                DAOTorneo   daoTorneo   = new DAOTorneo();
                dr = cmd.ExecuteReader();
                while (dr.Read())
                {
                    respuesta                         = new Equipo();
                    respuesta.idEquipo                = Int32.Parse(dr["idEquipo"].ToString());
                    respuesta.nombre                  = dr["nombre"].ToString();
                    respuesta.directorTecnico         = dr["directorTecnico"].ToString();
                    respuesta.colorCamisetaPrimario   = dr["colorCamisetaPrimario"].ToString();
                    respuesta.colorCamisetaSecundario = dr["colorCamisetaSecundario"].ToString();
                    respuesta.delegadoPrincipal       = daoDelegado.obtenerDelegadoPorId(Int32.Parse(dr["idDelegadoPrincipal"].ToString()));
                    respuesta.delegadoOpcional        = (dr["idDelegadoOpcional"] != System.DBNull.Value) ? daoDelegado.obtenerDelegadoPorId(Int32.Parse(dr["idDelegadoOpcional"].ToString())) : null;
                    respuesta.jugadores               = daoJugador.obtenerJugadoresDeUnEquipo(Int32.Parse(dr["idEquipo"].ToString()));
                }
                if (dr != null)
                {
                    dr.Close();
                }
                return(respuesta);
            }
            catch (Exception ex)
            {
                throw new Exception("Error al intentar recuperar el Equipo: " + ex.Message);
            }
            finally
            {
                if (con != null && con.State == ConnectionState.Open)
                {
                    con.Close();
                }
            }
        }