1

データセット内にあるデータテーブルを更新する方法を知りたい.アイテムの詳細を含むデータテーブルがあります.今、これを何らかの目的でデータセットに追加して更新したい.解決するためのいくつかの提案を教えてください.これ..

これは私のコードです:

                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 は、データセットに追加して更新する必要がある私のデータテーブルです..

4

2 に答える 2

2

DataSet の既存の DataTable に新しい行を追加したいと考えています。新しい DataTable を作成する代わりにBasket_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);

現在のコードでは、新しい行をデータテーブルに追加していません。行をデータテーブルに含めることを忘れないでください。

于 2013-01-10T11:30:18.267 に答える
0

DataTableがすでに既存のDataSetにあるが、それを別のDataSetに追加する場合は、最初にコピーを作成する必要があります。DataTableインスタンスは1つの親DataSetのみを持つことができます。

DataTable Basket_DataTable_copy = Basket_DataTable.Copy();
yourDataSet.Tables.Add(Basket_DataTable_copy);

次に、Basket_DataTable_copyで更新を行うことができます

MSDNのDataTable.Copyを参照してください

于 2013-01-10T11:35:51.297 に答える