我正在将一个datatable添加到一个dataset中,代码如下:
DataTable dtImage = new DataTable();
//some updates in the Datatable
ds.Tables.Add(dtImage);
但是下一次当datatable被更新时,它会反映在数据集中吗?还是我们需要编写一些代码来使其反映?
另外,我正在使用以下方式检查数据集中是否已存在datatable:
if(!ds.Tables.Contains("dtImage"))
ds.Tables.Add(dtImage);
在第一次迭代中,ds.Tables.Contains("dtImage")
为 false,所以 ds.Tables.Add(dtImage)
将表添加到数据集中。但在第二次迭代中,ds.Tables.Contains("dtImage")
再次为 false,但 ds.Tables.Add(dtImage)
抛出错误:
Datatable already belongs to this dataset.
如果数据集不包含名称为 "dtImage" 的数据表,为什么会抛出错误?
更新:谢谢,那个问题已经解决了。请回答这个问题:
但是下一次当数据表被更新时,它是否会反映在数据集中?还是我们需要编写一些代码来使其反映?
ds.tables.Contains("");
方法提供硬编码值...请使用ds.Tables.contains(footable.tablename);
进行检查。 - Mayank Pathak