system.argumentexception 列不属于 table

system.argumentexception column does not belong to table

我有一个包含 table Customer 的定义数据集。我正在尝试向此数据集添加一行,但我收到以下错误是我的代码

DataSet ds = new DataSet1();
DataTable dt = new DataTable("Customer");

using (StreamReader reader = new StreamReader(fileStream))
{
   while(reader.Peek() >= 0)
   {
      string row = reader.ReadLine();
      string[] content = row.Split('|');
      DataRow dr = dt.NewRow();
      dr["mother_name"] = content[0];  // I'm getting an error here.
      dr["beneficial_name"] = content[1];
      dr["industry_code"] = content[2];
      dt.Rows.Add(dr);
   }

}

filestream.Close();
ds.Tables.Add(dt);
cryRpt.SetDataSource(ds);

所以我在行 dr["emp_lastname"] = content[0]; 中收到异常错误,密钥存在于我的数据集中的 table 中。所以我假设当我执行 dt.NewRow() 时,它将创建我的数据集 table 行的实例。我该如何解决这个问题?我只想在我的数据集中填充一行 Table。下面是我的数据集的截图

您在 ds 中有一个 Dataset 实例,在 dt 中有一个 DataTable 实例。该 DataTable 实例无论如何都不会链接到您的 Dataset 。因此数据表没有列。

改为执行 dt=ds.Tables["Customer"]; 以获取符合您键入的数据集中的架构的数据表实例。