2016-07-28 49 views
0

我有我想要分配給它的值dataset我試過像下面這樣,但是沒有奏效。爲數據集對象賦值

string strExp = ""; 
for (int i = 0; i < ds.Tables[0].Rows.Count; i++) 
{ 
    strExp = "RAName = '" + ds.Tables[0].Rows[i]["RAName"].ToString() + "'"; 
    DataRow[] dr= ds.Tables[0].Select(strExp); 
} 
DataSet dsNew = new System.Data.DataSet(); 
dsNew = ds.Tables[0].Select(strExp); 

請讓我知道如何賦值給dataset

回答

1

你沒有打電話給AcceptChanges

string strExp = ""; 
      for (int i = 0; i < ds.Tables[0].Rows.Count; i++) 
      { 
       strExp = "RAName = '" + ds.Tables[0].Rows[i]["RAName"].ToString() + "'"; 
       DataRow[] dr= ds.Tables[0].Select(strExp); 
      } 
      ds.Tables[0].AcceptChanges(); //Commits all the changes made to this table since the last time AcceptChanges was called. 
      DataTable dtNew = ds.Tables[0].Select(strExp).CopyToDataTable(); 
      DataSet dsNew = new System.Data.DataSet(); 
      dsNew.Tables.Add(dtNew); 

的價值得到了存儲在數據表中,但選擇查詢的數據表的提交版本。

+0

我得到的錯誤,因爲_only賦值調用增量遞減和新的對象表達式可以用作一條語句在行'ds.Tables [0] .AcceptChanges;'**注意**,我正在使用Windows窗體 – BNN

+0

對不起,是一個錯字。它的一種方法 - 請使用'()' – Sadique

+0

嗨Sadiq,現在得到錯誤,因爲_cannot隱式轉換類型'system.data.datarow'到'system.data.datarow'_在行'dsNew = ds.Tables [0]。選擇(strExp);' – BNN