добавить не определенное количество строк набора данных в список - PullRequest
0 голосов
/ 06 марта 2019

Я пытаюсь вставить не определенное количество строк из набора данных в список, используя foreach.Но я не уверен, как добавить не определенное количество элементов в список из набора данных.

public void DeviceReset(string r)
{
    conn.Open();
    SqlCommand cmd = conn.CreateCommand();
    cmd.CommandType = CommandType.Text;
    cmd.CommandText = 
"SELECT installation_id FROM masterinstallationmaps WHERE masterinstallation_id = '" + r + "' ";
    cmd.ExecuteNonQuery();

    SqlDataAdapter da = new SqlDataAdapter(cmd);
    DataSet ds = new DataSet();
    da.Fill(ds);

Я выбираю ID_инсталляции из моей таблицы masterinstallationmap, и если она содержит более 0 строк, она должна выполнятьсяforeach для помещения строк в список, в противном случае он должен запускать foreach, только вводя в список 1 элемент.

List<int> instIdList = new List<int>();
if (ds.Tables[0].Rows.Count > 0)
{
    foreach (DataRow row in ds.Tables[0].Rows)
    {
        //How to insert all rows from the dataset?
    }
}
else
{
    instIdList.Add(1);
}

Оператор else работает нормально, но ничего не происходит, если набор данных содержит более 0 строк.

Я не уверен, что положить в foreach:

foreach (DataRow row in ds.Tables[0].Rows)
{
    //How to insert all rows from the dataset?
}

1 Ответ

0 голосов
/ 06 марта 2019

Почему вы не можете просто добавить значение как

foreach (DataRow row in ds.Tables[0].Rows)
{
    instIdList.Add(Convert.ToInt32(row["installation_id"])); 
}
...