如果我有一个DataTable并且想要创建一个新行,我首先调用 DataTable.NewRow()
,它返回一个DataRow . 然后该行具有表的模式,我可以设置行中每个字段的值 . 在这一点上关于Row的表是"know",还是仅在我调用 DataTable.Rows.Add(DataRow row)
之后才会发生?
如果我再调用 DataTable.Rows.Add()
,那么一次是在数据表中创建的具有重复值的重复行?
我问的原因是我正在尝试编写一个递归函数,它将迭代树结构并用值填充DataTable . 因此,我有这样的情况:为每个子项创建的行将具有具有所有相同值的列,因为它们来自父项 .
所以我的想法是传递一个DataRow与父's information to each child. The child would add its information and then add the row to the table. But I' m试图弄清楚我是否需要为每个孩子调用 DataTable.NewRow()
,或者如果我多次添加同一行将自动创建新行 .
4 回答
不,但是复制一行很容易,你可以得到你想要的东西(假设现有的行在一个名为existingRow的变量中):
是的,老问题 . 但迈克尔的回答确实有效 . 我需要为
DataTable
添加多个重复行以用于调度应用 . 随着dt.Rows.Add(_Users)
我得到了错误:但是使用这个,我可以根据需要循环并保持多个职位空缺,其中“长度”是为工作保持开放的职位数:
搜索谷歌这很糟糕,因为大多数人想删除
DataTable
中的重复行,而不是在DataTable
中添加重复的行 .不,它将生成System.ArgumentException类型的异常 .
我建议您将数据放入一个数组中,然后将数据添加到数据表中,例如
newdatarow
将生成异常错误