我使用以下代码查看新行中求和的结果。我有三列。 (SportID)(SportName)(费用)。我想在费用栏下的新行中显示费用总和。但它会遇到问题。请帮我解决一下。 任何帮助将不胜感激
int sum = 0;
for (int i = 0; i < dt.Rows.Count - 1; i++)
{
sum += int.Parse(dataGridView1.Rows[i].Cells["Fee"].Value.ToString());
}
DataSet ds = new DataSet();
adapter.Fill(ds);
DataRow row = ds.Tables["Entry"].NewRow();
row[0] = "";
row[1] = "";
row[2] = sum;
ds.Tables["Entry"].Rows.Add(row);
答案 0 :(得分:0)
我认为这一行应该是:
DataRow row = ds.Tables[0].NewRow();
-------
ds.Tables[0].Rows.Add(row);
或添加以下行:
ds.Tables[0].TableName="Entry";
答案 1 :(得分:0)
您将在以下行获得例外:
DataRow row = ds.Tables["Entry"].NewRow();
可能是因为你的ds没有任何表,或者表的名称不同。设置断点并在可视化调试器中查看数据集或尝试访问索引为
的表DataRow row = ds.Tables[0].NewRow(); //assuming you have table on 0 index
您还可以查看
if(ds.Tables.Count > 0)
答案 2 :(得分:0)
我是否在您的数据集中显示表条目?
DataRow row = ds.Tables["Entry"].NewRow();
您可以通过检查数据集中是否存在表格来避免异常
if(ds.Tables["Entry"] != null)
在访问之前,您应该添加名为条目的表格。如果您不知道该名称,则可以使用其索引访问该表。
DataRow row = ds.Tables[0].NewRow();