2012-02-04 2 views
0

Я пытаюсь добавить больше значений в строки DataTable. Исходные данные, считываемые из базы данных, не содержат двух дополнительных столбцов, которые я бы хотел добавить. У меня это до сих пор -Как добавить строку в DataTable?

myTable.Columns.Add("type", typeof(int)); 
myTable.Columns.Add("rate", typeof(int)); 

foreach (DataRow rows in myTable.Rows) 
{ 
    if (rows["dst"] == "1875") 
    { 
     //How to append values to this current row? 
    } 
} 

Прошу совета.

+0

В заголовке вопроса задается вопрос о добавлении строк, в которые добавляются * новые * строки в таблицу. Ваш текст вопроса больше напоминает добавление столбцов, а затем данных в * существующие * строки. Который из них? –

ответ

1

Вот ответ

foreach (DataRow rows in myTable.Rows) 
{ 
    if (rows["dst"] == "1875") 
    { 
     //How to append values to this current row? 
     rows["type"] = 32; 
     rows["rate"] = 64; 
    } 
} 

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

+0

одно небольшое дополнение, вы должны убедиться, что вы добавили 'rows.AcceptChanges();' –

+1

Mark. Исправьте меня, если я ошибаюсь, но я считаю, что вам нужно сделать это только в том случае, если вы отслеживаете состояние строки. Если вы просто показываете данные на основе таблицы в пользовательском интерфейсе, вам не нужно вызывать принимать изменения. – tsells

+0

Я всегда предполагаю, что есть вспомогательный объект, который я также обновляю. Я также проверяю состояние строки. В этом случае вы правы. –

Смежные вопросы