Я получаю ошибку при создании объекта datarow.ошибка при попытке вставить новую строку в таблицу набора данных
Ссылка на объект не указывает на экземпляр объекта
protected void Button2_Click(object sender, EventArgs e)
{
SqlConnection con2 = new SqlConnection("Data Source=AMIT-PC\\SQLEXPRESS;Initial Catalog=Amit;Integrated Security=true");
con2.Open();
SqlCommand cmd2 = new SqlCommand("Select * from hotel.country", con2);
SqlDataAdapter da2 = new SqlDataAdapter(cmd2);
SqlCommandBuilder sb = new SqlCommandBuilder(da2);
DataSet ds2 = new DataSet();
da2.Fill(ds2);
/* GridView2.DataSource = ds2;
GridView2.DataBind();*/
DataRow dr = ds2.Tables["hotel.country"].NewRow();
dr[ds2.Tables[TextBox1.Text].Columns[0].ColumnName] = TextBox2.Text;
dr[ds2.Tables[TextBox1.Text].Columns[1].ColumnName] = TextBox3.Text;
da2.Update(ds2);
GridView1.DataBind();
}
я не знаю, почему парень, который только что заметил удалил свой пост, потому что он решил моя проблема ... то есть я не могу использовать имя таблицы в ds2.Tables [""] вместо этого я должен использовать номер. –
Удалено, потому что в нем была некоторая информация о хранимых процедурах, и вы используете команду select. Теперь я изменил свой ответ. – JodyT
И если у вас будет более 5 таблиц, вы будете помнить все цифры? Попробуйте 'DataRow dr = ds2.Tables [" country "]. NewRow()' Также было бы намного проще, если бы вы создали свой собственный набор данных, такой как DsHotel со столом Country и так далее. Тогда это будет 'DsHotel.CountryRow dr = DsHotel.Country.NewRow(); dr.YourColumnName = .... ' –