Получить данные из DataGridView в TEXTBOXS - PullRequest
0 голосов
/ 10 мая 2018

У меня есть этот код:

private void dataGridView2_CellClick(object sender,DataGridViewCellEventArgs e)
{
    cmd.Connection = cn;
    cmd.CommandText = "select * from subdiseases where id_subdiss=" + dataGridView2.SelectedRows[0].Cells[0].Value;
    if (cn.State == ConnectionState.Open)
    { 
        cn.Close(); 
    }
    cn.Open();
    SqlDataReader dr4 = null;
    dr4 = cmd.ExecuteReader() ;
    while (dr4.Read())
    {
        a = dr4["id_diss"].ToString();
        comboBox1.Text = dr4["name_diss"].ToString();
        namesub.Text = dr4["name_subdiss"].ToString();
        namedet.Text = dr4["details"].ToString();
    }
    dr4.Close();
}

Я получаю эту ошибку:

Неправильная попытка вызова Read, когда читатель закрыт.

1 Ответ

0 голосов
/ 10 мая 2018

Как кто-то упомянул в комментарии под вашим постом, убедитесь, что вы получаете эту ошибку в том самом методе, который вы опубликовали, так как он выглядит хорошо для меня. Обычно вы получите эту ошибку, если вы закроете ридер внутри вашего цикла или попытаетесь прочитать его по закрытому соединению БД. Возможно, вы захотите попробовать просто открыть соединение один раз в начале и закрыть его один раз в конце, удаляя имеющуюся у вас проверку открытия-закрытия, хотя это не должно быть проблемой.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...