2017-05-30 5 views
0

私はRowFilterのを設定した上で、データセットがあります。DataSetでRowFilterを使用した後にフィルタリングされたレコードにアクセスするには?

DateTime minDateVal = (DateTime)ds.Tables[0].Compute("Min(DateTimeField)", "anotherField = 12"); 

ds.Tables[0].DefaultView.RowFilter = "anotherField=12 and DateTimeField='" + minDateVal + "'"; 

だから、このフィルタを適用した後、私は条件を満たしますが、どのように私は、フィルタリング行(RowFilterの条件を満たしているもの)にアクセスすることができます行を取得します?

いくつかの疑問:

  • のRowFilterを満たす行の数を取得するには、以下を行うには、それが正しいのですか? RowFilterを適用した後、フィルター行にアクセスするには

    ds.DefaultView.Count

    ds.DefaultView.recordCount

  • は下記行うには、それが正しいのですか?行0

ds.DefaultView.RowViewCache[0]["MyColumn1"].ToString() 

行1:

ds.DefaultView.RowViewCache[1]["MyColumn1"].ToString() 

など。

答えて

2

ので、どのようにすることができます...あなたは、.NET Framework 2.0以降のDataTable

DataView dv = ds.Tables[0].DefaultView; 

dv.RowFilter = "anotherField=12 and DateTimeField='" + minDateVal + "'"; 

Datatable result = dv.ToTable(); 
+0

ToTableに戻ってフィルタリングされたデータビューを取得するためにのみ利用可能データビューのToTable()をされて使用することができますし、私は、.NET 1.1を使用して、従来のプロジェクトを修正しています私はこれをします?私の投稿にコメントした方法を使って? – user1624552

関連する問題