我想知道如何更新数据集内的数据表。我有一个数据表,其中我有一些项目的详细信息。现在我想将它添加到数据集中用于某种目的并更新它。给我一些建议解决这个问题..
这是我的代码:
DataRow dr;
dr = Basket_DataTable.NewRow();
Basket_DataTable.Rows.Add(dr);
dr["PId"] = getPId.ToString();
dr["ProductName"] = getProductName.ToString();
dr["ImagePath"] = getImagePath.ToString();
dr["ProductPrice"] = getProductPrice.ToString();
dr["Quantity"] = getQuantity.ToString();
dr["ProductDescription"] = getProductDescription.ToString();
dr["TotalPrice"] = getProductPrice.ToString();
Basket_DataTable.AcceptChanges();
Basket_DataTable是我需要添加到数据集并更新的数据表..
答案 0 :(得分:1)
我相信您希望将新行添加到DataSet中的现有DataTable中。您的Basket_DataTable
应该引用数据集中的数据表,而不是创建新的DataTable。
喜欢的东西。
//Create new Row from your DataTable in DataSet
DataRow dr = yourDataSet.Tables["Basket_DataTable"].NewRow();
// here you can refer to your datatable with the index as well
//e.g. yourDataSet.Tables[0]
Basket_DataTable.Rows.Add(dr);
dr["PId"] = getPId.ToString();
dr["ProductName"] = getProductName.ToString();
dr["ImagePath"] = getImagePath.ToString();
dr["ProductPrice"] = getProductPrice.ToString();
dr["Quantity"] = getQuantity.ToString();
dr["ProductDescription"] = getProductDescription.ToString();
dr["TotalPrice"] = getProductPrice.ToString();
//Remember to add your row to the table.
yourDataSet.Tables["Basket_DataTable"].Rows.Add(dr);
在当前代码中,您不是将新行添加到数据表中。请记住在数据表中包含该行。
答案 1 :(得分:0)
如果DataTable已经存在于现有DataSet中,但您想将其添加到另一个DataSet中,则需要先创建一个副本 - 一个DataTable实例只能有一个父DataSet。
DataTable Basket_DataTable_copy = Basket_DataTable.Copy();
yourDataSet.Tables.Add(Basket_DataTable_copy);
然后你可以在Basket_DataTable_copy上进行更新