2012-04-04 5 views
0

私はdatarows.Forの2つの文字列を検索したいです。C#Datatableクエリ

string1="ex" 
string2="ex2" 
row1={'ex','ex2','ex3'....}---->True 
row2={'ex3','ex1','ex2'....}---->True 
row3={'ex2','ex5','ex6'....}---->False 

各行は二つの文字列の値を持っている必要があります。これについては 、

for (counter = 0; counter < array.Count; counter++) 
     { 
      int index=0; 
      ArrayList array3 = new ArrayList(); 
      array3 = Split(array[counter].ToString()); 
      foreach (DataRow row2 in data.Rows) 
       foreach (object obje in row2.ItemArray) 
       { 
        //Proceeds 
        } 
       } 
     } 

私はコード内の汚染に対処する必要はありませんsomething.Butコーディング... はです方法を選択する簡単な方法はありますか?

答えて

3
var result = data.AsEnumerable() 
      .Where(r => r.ItemArray.Contains(string1) || r.ItemArray.Contains(string2)) 
+0

Thnks!It's great ... –

1

このような何かを試してみてください。

dtDataTableここで最初のDataView

DataView dv = new DataView(dt)を定義します。

RowFilter

dv.RowFilter = "CONTAINS(ColName, 'ex1') AND CONTAINS(ColName, 'ex2')"を適用します。

これが役に立ちます。