ho questa classe:
codice:
    public class Decoder
    {
        private SqlConnection conn = new SqlConnection("Data Source=10.0.5.131;Initial Catalog=TELENEWS;Persist Security Info=True;User ID=sa;Password=sa");

        public DataSet ddlNetwork()
        {
            SqlDataAdapter adapter = new SqlDataAdapter("select_soluzioni", conn);
            try
            {
                conn.Open();
                DataSet ds = new DataSet();
                adapter.Fill(ds);
                return ds;
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message);
            }
            finally
            {
                conn.Close();
            }
        }

        public SqlDataReader ddlGruppi(int soluzione)
        {
            SqlDataReader reader = null;
            try
            {
                SqlCommand cmd = new SqlCommand("select_gruppi_soluzione", conn);
                cmd.CommandType = CommandType.StoredProcedure;
                cmd.Parameters.AddWithValue("@soluzione#", soluzione);
                cmd.Connection = conn;
                conn.Open();
                reader = cmd.ExecuteReader();
                return reader;
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message);
            }
            finally
            {
                if (reader != null)
                {
                    reader.Close();
                }
                conn.Close();
            }
        }
    }
ottengo sempre questo errore:
Invalid attempt to call FieldCount when reader is closed.

ovviamente se levo il primo metodo nn lo ottengo.
ma nn capisco il motivo.