【发布时间】:2012-08-24 02:46:45
【问题描述】:
我正在向这样的数据集添加数据表:
DataTable dtImage = new DataTable();
//some updates in the Datatable
ds.Tables.Add(dtImage);
但是下一次,当数据表更新时,它会反映在数据集中吗?或者我们需要写一些代码来让它体现出来?
另外,如果数据表存在于已经使用的数据集中,我正在检查数据集:
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) 抛出错误:
数据表已经属于这个数据集。
如果数据集不包含名为“dtImage”的数据表,为什么会抛出错误?
更新:谢谢,问题已解决。请回答这个问题:
但是下一次,当数据表更新时,它会是 反映在数据集中?或者我们需要编写一些代码来实现 反映?
【问题讨论】:
-
创建数据表的代码是什么样的?你把它命名为 dtImage -> Dim dtImage as DataTable = New DataTable("dtImage")
-
因为您正在为
ds.tables.Contains("");方法提供硬编码值....使用ds.Tables.contains(footable.tablename);进行检查