2011-06-22 5 views
-1

可能性の重複をテーブルを追加します。
Datatable add to datasetは、データセットに

私はデータセットDSを持っている..私は満足基準場合はデータセット内の値のいずれかをチェックし、値を割り当てる必要があります別のデータセットに値を取得できますが、データテーブルをチェックした後にデータセットに割り当てられた場合、dtreturnはdsreturnに設定されません。以下 は私のコードです:

DataSet ds = datasetValue(); 

DataSet dsReturn = new DataSet();    
DataTable dtReturn = dsReturn.Tables.Add();  
dtReturn.Columns.Add("id");   
dtReturn.Columns.Add("description");  
dtReturn.Columns.Add("status");   
foreach (DataRow row in ds.Tables[0].Rows)  
{    
    if(Convert.ToInt32(row[1]) == status)   
    { 
     DataRow newrowdata = dtReturn.NewRow();  

     // gives object ref not set to an instance of object... 
     dsReturn.Tables["dtReturn"].ImportRow((row)); 

     //DataRow drReturn = dtReturn.NewRow();     
     //dsReturn.Tables["dtReturn"].Rows.Add(row);  
    }   
}    
return dsReturn; 
+0

[あなたはこの以前については "聞いて" いないですか?](http://stackoverflow.com/questions/6438509/datatable-add-to-dataset) –

答えて

0

あなたが名前を使用している名前の表1のようなものか、他の何か

dsReturn.Tables["dtReturn"].ImportRow((row)); 

ここでDataTableを追加します

DataTable dtReturn = dsReturn.Tables.Add(); 

を使用していますこれは実際にはDataSetに含まれていないDataTableのインスタンス名です。 dtReturnとしてはそのような表はDataSet dsReturnに存在しない

dtReturn.TableName = "dtReturn";

+0

私が持っていますdsReturn.Tables ["Table1"]のようにテーブル名を変更しました。ImportRow((row));それでも同じエラーが発生する – Rajan

+0

'TableName'をチェックしてチェックしましたか?必ずしもそうである必要はありません。Table1、デバッグ中に何をチェックしてください。' dsReturn.Tables ["Table1"] 'nullにする必要があります – V4Vendetta

+0

デバッグ中にTable1でした。 – Rajan

0

はあなたが行うことができます多分これはトリックを行う必要があります追加して異なる:

DataSet dsReturn = new DataSet(); 

DataTable dtReturn = new DataTable("dtReturn"); 
dtReturn.Columns.Add("id");    
dtReturn.Columns.Add("description"); 
dtReturn.Columns.Add("status"); 

dsReturn.Tables.Add(dtReturn); 

そして、あなたはnewrowdataで何をしますか?

EDIT:

DataRow newrowdata = dtReturn.NewRow(); 
dsReturn.Tables["dtReturn"].ImportRow((newrowdata)); 
+0

なぜこれを使わないのですか?DataRow newrowdata? –

関連する問題