loai_maane Ответов: 3

Создание новой строки в наборе данных


я пытаюсь добавить новую строку в набор данных для таблицы, уже созданной в наборе данных с именем retired ,
я получаю ниже ошибки:
Ссылка на объект не установлена на экземпляр объекта.

есть идеи, пожалуйста?

Что я уже пробовал:

 DataRow dr = ds.Tables["retired"].NewRow();
                   dr["Empno"] = empno.Text;
                   dr["Empname"] = name.Text;
                   dr["Formno"] = formon.Text ;
                   dr["x1"] = "X";
ds.Tables["retired"].Rows.Add(dr);

Michael_Davies

Какая линия?

ZurdoDev

Понятия не имею, потому что вы не сказали нам, какая строка кода вызвала это. Но ошибка заключается в том, что вы пытаетесь получить доступ к чему-то, что не существует. Просто исправь это.

loai_maane

первая строка, я уже создаю таблицу данных с таким же именем.

3 Ответов

Рейтинг:
1

#realJSOP

Без дополнительной информации я могу только догадываться, что, возможно, таблица "retired" не существует в коллекции таблиц.


Рейтинг:
0

Member 10007226

Первым Делом . заменить ДС.Столы["пенсионер"].Невров(); с ДС.Таблицы[0].Невров(). Не называйте имя таблицы . Дайте идентификатор таблицы. И это решит вашу проблему.

пример для вас
DataSet ds = новый набор данных();
DataTable dt = новый DataTable();
ДТ.Столбцы.Add ("ID", typeof (string));
ДТ.Столбцы.Add ("name", typeof (string));
Доктор строкаданных = ДТ.Невров();
dr ["ID"] = " 1";
dr ["name"] = " Chauby";
ДТ.Строк.Добавить(д-р);
ДС.Таблицы.Добавить (dt);
//отсюда начинается ваше решение
DataRow dr1 = ds. Tables[0]. NewRow();
dr1 ["ID"] = " Chaubey1";
dr1 ["name"] = " Chaubasdasdey1";
ДС.Таблицы[0].Строк.Добавить(ДР1);
Ваше решение должно быть таким. . Нет имени таблицы


loai_maane

Дорогой,
извините, сегодня я попробую ваше решение, оно дает ошибку не может найти таблицу 0, я уже создаю таблицу данных с именем retired

Рейтинг:
0

Ramesh Kumar Barik

общественный разделяемого класса, Класс1 : стр.
{
Набор данных ds = null;
protected void Page_Load(отправитель объекта, EventArgs e)
{
DataSet ds2 = GetDataSet();

DataTable dt2 = DS. Tables ["retired"];
Доктор строкаданных = ст2.Невров();
dr ["Empno"] = " 2";
dr ["Empname"] = " Aa";
dr ["Formno"] = " Bb";

ст2.Строк.Добавить(д-р);
ДС.Таблицы.Удалить ("пенсионер");
ДС.Таблицы.Добавить (dt2);
}

публичный набор данных GetDataSet()
{
ds = новый набор данных();
DataTable dt = новый DataTable ("вышел на пенсию");
ДТ.Столбцы.Добавить ("Empno");
ДТ.Столбцы.Добавить ("Empname");
ДТ.Столбцы.Добавить ("Formno");

Доктор строкаданных = ДТ.Невров();
dr ["Empno"] = " 1";
dr ["Empname"] = " A";
dr ["Formno"] = " B";

ДТ.Строк.Добавить(д-р);
ДС.Таблицы.Добавить (dt);
возврат ДС;
}
}
Проверьте этот код, если он может вам помочь.