C # - Заполнить общий список из SqlDataReader

Как мне добавить значения, которые SqlDataReader возвращает в общий список? У меня есть метод, в котором я использую SqlDataReader , чтобы получить CategoryID из таблицы Category . Я хотел бы добавить все CategoryID в общий список.

Эта доза не работает, потому что она возвращает только один categoryID , и это последний. Я хочу добавить все categoryID в список, а затем вернуть их.

Как мне это сделать?

SqlConnection connection = null;
SqlDataReader reader = null;
SqlCommand cmd = null;

try
{
    connection = new SqlConnection(connectionString);
    cmd = new SqlCommand("select CategoryID from Categories", connection );

    connection.Open();

    List<int> catID = new List<int>();
    dr = cmd.ExecuteReader();
    while (dr.Read())
    {
        catID.Add(Convert.ToInt32(dr["CategoryID"].ToString()));
    }
}
finally
{
    if (connection  != null)
        connection.Close();
}
return catID;
11
задан parsley72 19 July 2017 в 17:56
поделиться