Так что я пытаюсь добавить некоторые строки в DataTable
, но по какой-то причине он, кажется, перезаписывает предыдущую строку. Как я могу это предотвратить.DataTable перезаписывает предыдущую строку
То, что я до сих пор этот кусок кода: пример
DataTable table = new DataTable();
foreach (CallData data in p.ValueArray)
{
DataRow row = table.NewRow();
foreach (CallParm parm in data.Parm)
{
if (!table.Columns.Contains(parm.Name))
{
table.Columns.Add(parm.Name, typeof(string));
}
row[parm.Name] = parm.Value;
}
table.Rows.Add(row);
}
данных:
{
ValueArray: [
{
Parm: [
{
Name: "ID",
Value: 1
},
{
Name: "ID",
Value: 2
},
{
Name: "ID",
Value: 4
}
]
}
]
}
данных приводят
"ID": 4
хотел привести
"ID": 1
"ID": 2
"ID": 4
Я уже проверял, что он проходит через петли, как и должно быть, проблем нет. Когда мы добавляем строку, кажется, что проблема
Если предыдущая строка имеет тот же параметр. Имя переписывается (строка [parm.Name] = parm.Value;). Что вы хотите достичь? Вы хотите добавить все элементы из ValueArray? –
Итак, в итоге у вас есть только одна строка в вашем DataTable, но у вас есть несколько элементов в ValueArray? – mybirthname
@mybirthname: Правильно –